home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Saar AMOK 2
/
Saar AMOK II - Oktober 1994 (1994)(Kreativ Marketing)(DE)[!][I-7598].iso
/
disks
/
651_700
/
693
/
avm
/
avm1.19.lha
/
avm.doc
< prev
next >
Wrap
Text File
|
1994-04-06
|
129KB
|
3,132 lines
Document AVM Release 1.19 documentation
AVM Program Documentation
~~~~~~~~~~~~~~~~~~~~~~~~~
A Program by Al Villarica 1994
If you had versions between 1.11 and 1.15, read `New Voice Files'
thoroughly. Otherwise, you may find that AVM hangs up
on you at odd times. Basically, I had to rename
some of the voice files (aside from adding more voice files
for you to record). If AVM doesn't find the right
voice file, it will hang up on you.
Read the documentation! It is important, given the complexity
of the system. I have tried to make the documentation as
complete as possible. However, if you find something that is
out of date with the actual program, let me know so I can update
the documentation. Again, it is important that you go through
the documentation at least once. If you have some problems,
check out the section called `Common Problems' before asking
me. You may find that some of your questions have already been
asked by other people and have been solved.
If you press the "Help" key in any of the windows (except the
window that pops open if you have an unregistered version of AVM),
you will get to read this file. It is context sensitive, but not
fine grained. In other words, you will be put in the section
that talks about the particular program you pressed the "Help"
key in.
As of this version, Rockwell support is considered beta while
all other modems supported are considered to be stable.
0. Important!
-------------
0.1. UNREGISTERED version
AVM is Copyright - 1994 by Al Villarica (SoftWorx).
The UNREGISTERED version is freely distributable, as long as
it remains in the original archive as shipped by the author. You
may not sell the UNREGISTERED version for profit. Only a minimal
copying fee may be charged.
You are legally entitled to use the UNREGISTERED version for
as long as you like, as long as the programs are *not* modified in
any way. For example, you are not allowed to remove the requesters,
change any of the texts within the program, etc. You are *not*
allowed to close the "annoying" window by using any external
program. This window is meant to be a constant reminder that
you are using an UNREGISTERED version of AVM. If you find it
useful, I would really appreciate it if you would register the
program. That would be the best way to get this program to
improve. Also, please do *not* try to use an external program
to resize my "reminder". I am not responsible for any crashes due
to resizing, moving the window to another screen (it likes to stay
on the WorkBench screen), or closing the window. I myself am
using a version of the AVM server which has the annoying window.
Really! So, if I can use it, then you should be able to too. I
don't think that my registration fee is outrageous.
You may, however, modify the ARexx scripts to your heart's
content. You may *not* use these ARexx scripts or any of their
derivatives for anything but AVM. Any ARexx scripts created by
users (whether hand coded or generated by the AVM Programmer)
can be put in the public domain. In fact, I urge you to distribute
them or at least tell me about them so I may incorporate them (or
some of their features) into the following releases of AVM.
You may not use *any* of the binaries (the server, programmer,
iff2adpcm, adpcm2iff, etc.) for anything but AVM.
NOTE! I have included the Programmer, Scheduler, and
SchedulerView starting with this version. They, however,
have been disabled. You can look at the Programmer and play
around with it, but you can't save nor compile anything you
create. With the Scheduler, you can do everything with it,
but it won't wake up to process scheduled events. But, if you
want to see how it would call somebody up, you can press the
Send gadget, which manually process the currently highlighted
entry. This will at least show you that the Scheduler does
work. Maybe the inclusion of these programs (they're not
vaporware) will convince you to register this program :)
0.2. REGISTRATION
Although the UNREGISTERED version is very usable as is, you are
encouraged to register the software. At this time, there
are two levels of REGISTERED users.
Registration entitles you to 1 year of free updates when they
become available for the programs and ARexx scripts that you
are registered for. These updates will be made available
for download in the form of patch files. I will not be sending
out update disks (although I may send out postcards to tell you
about important updates).
Registration will also get you technical support. Although I
will try to help new users in getting the UNREGISTERED version
working on their system (what good is a demo if you can't get
it working, right?), I cannot provide much more than that. I
need to concentrate on supporting those who were kind enough
to register. Of course, you can offer suggestions on how to
improve the software (and these suggestions may even show up
on later working demos of the AVM Suite). If I add those things
that you want, maybe that will encourage you to register.
Registration is transferrable. You have to inform me of the
specifics of the transfer (i.e. to whom it was transferred to).
Registration entitles you to use the AVM Suite on only one computer.
Of course, you can use as many modems on that computer as you
can possibly fit. You may need a high-performance computer to
be able to do this, though. With the best compression, the
modem to computer transfer rate is at least 9600, making it
quite unlikely that a 68000 computer will be able to handle
more than one modem at a time.
0.2.1. REGISTERED version level 1
With this level, you will get:
o an annoying-less version of the AVM Server,
o a working AVM Scheduler for sending unattended outgoing
messages and faxes
- the Scheduler can call you up at work when somebody
"deposits" a message in your mailbox
- the Scheduler can forward faxes to another fax number
automatically
- the Scheduler allows you to "reply" to messages left
by callers
- the Scheduler allows you to "send" voice or fax
messages to people
0.2.2. REGISTERED version level 2
In addition to what you get from level 1, you will get:
o a working AVM Programmer which makes adding mailboxes and
customizing the ARexx scripts *much* easier
- Use it to add mailboxes, delete mailboxes
- Program unique voice menus
- Allow people to hear about products you are selling
- Allow people to get faxes from you about products you
are selling
- Allow people to hear music you have composed
- With the X10 interface, you can turn your appliances
on and off from the outside
- Program automated surveys or questionnaires (it can call
people up and collect responses from them).
- Program 1-900 quizzes
- Anything you can do with ARexx, you can do from within
the AVM Programmer, and hence from a remote telephone
- Create a voice BBS
0.3. Payment Options
Send payment to the `Author', Al Villarica. For European customers,
send payment to the `European Registration' site.
+---------------------------------------+
| Prices |
+---------------------------------------+
|Level 1 $20.00 |
|Level 2 $35.00+ |
|Upgrade from 1 to 2 $20.00 |
|Shipping/Disks $ 1.75* |
+---------------------------------------+
* The shipping/disk charge is per disk. MUI takes 1 disk. AVM
takes another. Each set of voice files takes 1 disk. If you can
download these things (or if I can email them to you), then you
don't have to pay any shipping or disk charges. Tell me which
disks you want (MUI, AVM, voice files).
+ If you would like to send *more* money than what I'm asking
for, I would appreciate it very much. I made my prices low
to get people to even think about registering. In my opinion,
you get a lot for what you pay for.
I will not be recording special voice files for people (unless
special arrangements are made). The voice files that I will
be sending are generic voice files for a simple answering machine.
Note that I may not have it for your specific modem or
for your specific language -- at this time, I can only guarantee
that I have voice files for ZyXELs and LineLinks in the English
language.
Some people have been able to send me cash (foreign currency is
acceptable but please be fair when calculating the exchange rate)
by wrapping it in aluminum foil. I am not sure if this is legal,
and I cannot guarantee that I will receive it. Of course, you
could send it to me "registered" so that I will have to sign for
it and you will receive notification that I signed for it.
Someone has been able to send via a postal money order from Italy.
So, I know this is also another alternative. I am not sure how much
this will cost you though. When doing this, please make sure
that the full address is shown on the money order. Otherwise,
I will have no way of knowing how to get in touch with you.
When sending in payment, please include a short note to tell me
enhancements you want me to include for future releases. Remember
that programs evolve. This is your chance to contribute to its evolution.
If you have suggestions for the program (and you don't want to
register), send in your comments anyway. Let me know why you don't
want to register (costs too much, it's missing a feature, etc.).
Here's a form you can cut out and print out (don't forget to include
the country you're in!):
Name: __________________________________________________________________
Address: _______________________________________________________________
_______________________________________________________________
_______________________________________________________________
Country: _______________________________________________________________
Email (InterNet/Compuserve/America Online/Genie/etc): __________________
_________________________________________________________________
Telephone Number: _____________________________________________________
How would you like to receive
the key files? ( ) Email
( ) Regular mail together with AVM disk
( ) ftp site: __________________________________________
private directory: _____________________________
( ) IRC dcc
AVM: ( ) Level 1
( ) Level 2
( ) Upgrade from 1 to 2
( ) Send AVM on a disk
( ) Send MUI on a disk
( ) Send voice files on disk (modem = _______, language = _______)
Computer: _____________________________________
Processor: ____________________________________
Speed (MHz): __________________________________
Memory (MB): __________________________________
Modem: ________________________________________
Serial Port: ( ) standard built in
( ) custom: ______________________
Kickstart version: ____________________________
Workbench version: ____________________________
0.4. Technical Support
You may send mail to the `Author'. I will try to answer your questions
as soon as I can. However, if you have access to a system that can
send email to an Internet site, my address is:
rvillari@cat.syr.edu
If you send email to this address and I do not respond within 1 week,
you can be sure that I did not receive your email or my reply didn't
reach you. I am usually very good about replying to email, even if you
don't ask a question. So, if you don't get any response from me, try to
find other ways of reaching me.
I am also available for questions on IRC. I hang out on the #amiga
channel and normally use "av" as my nickname. Just do a /who #amiga
and look for me. I can DCC stuff to you.
I will answer all questions and help you do some ARexx programming
if you are using a fax or data/BBS program that you want to integrate
with AVM.
You can also get some technical support by calling up my Mini BBS.
See `Getting Updates'.
Before asking me a question, *please* look for the answer here in
this document. You may find that someone asked your question
and I answered it. Look at the section `Common Problems'. Also,
it would be most helpful if, aside from telling me that AVM doesn't
work, you provide useful information. For example, I would like to
know:
o Your computer type (A1000, A2000, etc.)
o Your processor type (68000, 68020, 68030, 68040, 68060)
o Your operating system version (2.04, 2.1, 3.0, 3.1, etc.)
o Your modem type and ROM version (if you have a ZyXEL, type in
ATI1 in some terminal and tell me what it says).
o Your serial port (internal, GVP IOextender, Multiface II, Multiface III,
etc.)
o A ram:logger.save file. Run the Logger program, try to reproduce
the problem, click on the Save button in the Logger window, then
send me the file called ram:logger.save. The Logger program produces
important information about the AVM Server process which handles
the modem. It also tells me if there's a problem with one of your
ARexx scripts. In other words, the file ram:logger.save allows me
to do "remote" debugging.
o Your avm:servers.cfg file.
0.5. Getting Updates
I will try to distribute patch files on the major networks (Usenet,
FidoNet -- see `Deep Thought BBS', Fred Fish, etc.). But, you can
call up my Mini BBS by doing the following:
Use a telephone and dial my number (See `Author'). Wait for AVM
to answer. When it does, press 5 on your touch tone phone. That will
activate AXsh, a non-traditional BBS that contains AVM related files.
Instructions on how to use AXsh will be displayed when you log in.
You can call between 10am and 5pm, Eastern Standard Time (USA),
but please don't be rude: say "hello" if somebody answers. Then
kindly ask them to press 5 (silent answer is active, so it should
be possible to get the modem to answer in data mode even if somebody
answers -- neat, huh?).
NOTE: THIS IS ONLY AS A LAST RESORT! I WOULD PREFER IT IF YOU GOT
AVM EITHER THROUGH YOUR LOCAL BBS, BY EMAIL OR FTP, OR THROUGH
THE DEEP THOUGHT BBS.
Important! I'm following the Commodore way of numbering versions. This
means that AVM 1.16 would be a higher version than AVM 1.2.
0.6. European Registration
If you live in Europe, you can send your registration forms and payment
to:
Odendahl Stefan
Wickertweg 16
3902 Brig-Glis
Switzerland
He will handle any registrations you send to him. Of course, I
will still accept your registration here, but it is probably easier
to send it to him if you live in Europe.
He says he prefers Swiss Francs (sFr), but other currencies are
welcome. Again, be fair when making the conversion.
If you wish to send Swiss Francs (by any of the methods described
below), please account for the conversion from the US$ registration
fee to what you send to him in Swiss Francs. Stefan has to buy
a US$ Money Order using your Swiss Francs before he can transmit
the money to me.
If you decide to send money in any currency other than Swiss Francs
(including US$), Stefan has to first convert it into Swiss Francs
before buying a US$ Money Order. So, please allow for a double
conversion.
Please decide how to transfer the money:
o Cash (no coins)
o International postal money transfer to his "post account"
No. : 19-10974-2
Check-Office : Sitten
Country : Switzerland
o Postal money order
Checks are not accepted at this time because Stefan has determined
them to be too expensive to cash at his bank. Plus, the price
of cashing varies, so it's hard to pass the cost on to the
registering party.
You can reach him at:
odendahl@avalon.unizh.ch or sodendah@iiic.ethz.ch (Internet email)
Stefan Odendahl (2:301/807.42) (FIDO mail address)
Odi (IRC)
0.7. Deep Thought BBS
Christian Stelter has been kind enough to carry AVM in his BBS. It is
a FidoNet node. Here's information on his BBS.
DEEP THOUGHT Bulletin Board System
InterNet: deepthought.north.de
FidoNet: 2:2426/2020.0 & 2:2426/2021.0
AmigaNet: 39:170/204.0 & 39:170/205.0
Port 1: +49-(0)441-383365, 1200-19200 bps ZyXEL
Port 2: +49-(0)441-383839, 1200-16800 bps ZyXEL
Magic for Fido File Requests: AVM (for the latest version)
: FILES (for a list of all files)
0.8. Mailing List
Christian Stelter has set up a mailing list for AVM. To join
this mailing list, send email to "listserv@deepthought.north.de".
On the first line of your email (not the Subject header), type
in:
subscribe avm
Then, when I send email to this mailing list, everyone on
the mailing list will get a copy. This is a good way for you
to find out about new releases of AVM (whether Beta or final).
Plus, I plan to distribute small fixes to ARexx scripts here
and to discuss new features and bugs.
0.9. Author
Users of ZVM, *please* note the address change!
Al Villarica
408 Arnold Ave.
Syracuse, NY 13210
USA
Fax: (315) 471-4043
Voice: (315) 471-4043
Data: (315) 471-4043
1. Introduction
---------------
What does AVM stand for? No, it's not Al's Voice Mail or something
like that. I had planned on it being Amiga Voice Mail, but decided
on Advanced Voice Mail (recommended by one of the Beta testers).
With the AVM, you can use your voice-capable modem (Zyxel, Dolphin,
or LineLink, Rockwell based voice modem) and GPFax to provide:
o A three-mailbox answering machine. These mailboxes currently
are named (Anonymous, Al, and Dory). You can change
their names. See instructions in the Call Notifier on how
to accomplish this.
o A simple answering machine if you don't want to have mailboxes.
In this case, only the Anonymous mailbox is active.
o The ability to archive messages and faxes that you receive so
that you can recall them later on.
o The ability to receive voice messages, faxes, and data calls
all on one line. At this time, only GPFax is supported.
With some ARexx programming, other fax programs may be
substituted. At this time, only AXsh (a non-standard,
but publically available BBS) is supported for handling
data calls. All you have to do is install AXsh.
o The ability to retrieve messages from a remote site by using
the remote site's touch tone keys. Information about the
message can be played, such as the time and date of the message,
any telephone number left by the caller, or the telephone
number transmitted via the Caller-Id mechanism available
on some phone systems.
o Silent answer -- if you pick up the phone before the program
does, it will eventually pick it up and listen in on your
conversation. By pressing the appropriate keys on your touch-
tone phone, you can instruct AVM to handle the call as a fax
call or have it start recording your convesation.
o Record Conversation -- you can use this to record important
conversations. This is especially handy when dealing with
mail-order firms. But, you need to tell
the other party that the conversation lest you get accused
of having an illegal phone tap.
o Remote recording -- you can remotely record a personal greeting
for each mailbox. In addition, some of the outgoing messages
can also be recorded from another telephone.
o Pre Conversion -- with this feature, you will be able to
pre-convert voice files while your computer is not doing
anything interesting. So, when you get home, you can click
on Play to play your message, and it will be immediately
played. Otherwise, you would have to wait for the conversion
process to take place.
o Immediate playing -- if you have a fast Amiga and you use a
compression mode that can be "uncompressed" quickly, you
can play the incoming voice files directly to the Amiga sound
system. No intermediate conversion is necessary. With this
feature, you don't have to use the Pre Conversion feature
(but you still can, if you want) and you don't have to wait
forever to hear your incoming messages.
o Multiple greetings -- you can greet your callers depending on
the time of day, the day of the week, randomly, etc. Plus,
you can record these greetings remotely.
The AVM Suite is a major rewrite of ZVM, my first attempt at providing
answering machine capabilities to users of the Amiga and the Zyxel modem.
AVM now supports the LineLink 144e modem (some restrictions apply) and
the MTD Dolphin modem (a Zyxel compatible), a Rockwell chipset based
voice modem (I tested a Zoom VFDX).
The AVM Suite consists of a bunch of programs which all cooperate via
ARexx. For example, when a call comes in and someone leaves a message,
the `Call Notifier' will show that there was a new message (the Count
would increase in the appropriate mailbox). If there was a `LogView'
opened that was "viewing" the mailbox where the message was in, a new
entry would automatically be inserted into the view. In other words,
changes to the mailboxes are broadcast to all the active programs
that are viewing a particular mailbox.
The AVM Suite uses the server model. Each modem that you want the AVM
Suite to handle incoming calls for, needs to have a server process (`AVM')
running for it. The AVM server knows how many rings to wait for before
answering a ringing line. When it gets the desired number of rings, it
dispatches an ARexx script on itself to handle the call. I designed this
server to be able to run autonomously. Therefore, it is possible to have
the AVM server running to handle all calls and not have the `Call Notifier'
or the `ServerMan' running. This will definitely conserve memory, but at
a small cost. The AVM server will not know if there are any messages being
"watched", so it will not be able to support the "Toll Saver" option.
And, you will have no real way of knowing whether there were messages left
on your computer, since that was the whole purpose of the `Call Notifier'.
But, as I said, if you can do without those two features, you can get away
with running just the AVM server. Do this in low memory situations.
2. Requirements
---------------
o AmigaDOS 2.04 or greater
o MUI 1.4 or greater (someone tested it with MUI 2.0 and it works).
o a Zyxel, a LineLink 144e, a MTD Dolphin modem, or a Rockwell
chipset based voice-capable modem.
o ARexx - this is included with AmigaDOS 2.04 and up, but it may not
actually be running on your system. Look in the startup-sequence
or the user-startup for a line containing "rexxmast" to be sure.
Alternatively, type in the following into a shell:
rx "say hello world"
If it prints HELLO WORLD in the shell, ARexx is running.
o a hard disk to store voice messages
o 1 meg of RAM (the more, the merrier)
o an accelerated Amiga is desirable, but is not really a requirement
o speakers hooked up to your Amiga would be nice
o a sound digitizer would also be nice (you don't need one since
you can record messages using the phone line)
o a fast serial port is also desirable, but not a requirement.
I have been told that AVM does work with the IOExtender,
the Multiface II card, and the Multiface III card.
o when using the AVM programmer, you need to be using at least a
640x400 screen (because of the size of the windows).
3. Setting up
-------------
0. If you have a Rockwell based modem, connect your telephone to
the back of the modem.
Otherwise, you will need to connect your telephone to some sort
of splitter. The telephone should be connected in *parallel*
with the modem. It should not be connected to the back of the
modem! Another possibility is to hook it up to an extension
in your house.
1. Install MUI 1.4 or greater and ensure that it works by trying
out one of the MUI demos. If you cannot get one of the demos
working, you can be sure that AVM won't work either.
NOTE: Instructions 2 through 7 can be skipped if you double-click
on the avm-install icon, which takes care of these steps for you.
This assumes that you already unarchived the avm1.19.lha archive
in some temporary directory. It will copy the necessary files
from that temporary directory to the final directory and add the
necessary ASSIGNS to your user-startup file. You will also be able
to choose what type of modem you have, what type of digitizer,
and the method by which you want to be informed of new calls.
2. Create a directory in which you want the AVM Suite to reside. Use
the Workbench for this.
a. Find a place to put the AVM Suite on the Workbench.
b. Press the right-mouse-button, select the Window menu, then
select the "New Drawer" option. You will then be prompted
for a drawer name. Enter "AVMSuite" (without the
quotation marks) in that requester.
OR, if you prefer using the Shell,
makedir work:AVMSuite
copy work:empty.info work:AVMSuite.info
Note that if you use these "Shell" instructions, you will need
to go to the workbench afterwards, move the AVMSuite icon to
a new location, and use the Snapshot menu item in the Icons
menu of the workbench.
3. Unarchive the AVM archive while you are in the directory you
just created.
cd work:AVMSuite
lha x ram:avm1.19.lha
4. Edit s:user-startup and add the following lines (but change the
directory name if you put AVM in some place other than
work:AVMSuite).
assign avm: work:AVMSuite
assign avmtemp: ram:
assign avmrexx: avm:rexx
5. Open up the AVMSuite drawer from the WorkBench.
6. Make a directory called "voices" in the AVMSuite drawer.
From the CLI, just do a:
makedir work:AVMSuite/voices
7. Open up the DefaultIcons drawer in the AVMSuite drawer.
If you have a Rockwell based mode, double-click on the
"useRockwell" icon.
If you have a LineLink144e modem, double-click on the
"useLineLink144e" icon.
If you have a Dolphin modem, double-click on the
"useDolphin" icon.
If you have a ZyXEL, first find out what ROM version you
have by typing in "ATI1" in a terminal program (like
Terminus, JR-Comm, vt10029b, ATalk III, etc.). Then find
the icon entitled "useZyXEL????" where the "????" are
replaced by the ROM version that you have on your modem.
If you have a ROM version that does not have an icon,
find an icon which is closest to your ROM version.
Complete these instructions and then test things out.
If you find that it doesn't work, double-click on another
icon and try it out. If none of the icons work, contact me.
Next, you need to tell AVM what kind of sound digitizer you
have. If you don't have one, then these instructions
do not apply to you. If you have a Perfect Sound digitizer,
double click on the "usePerfectSound" icon. Otherwise, double
click on the "useGenericDigitizer" icon.
Finally, you need to tell AVM how you want to be informed
of new messages. If you want to be informed of messages via
the AmigaDOS "say" command (AmigaDOS 3.0 and up users should check if
they have this command), double click on the "useSayAlert" icon.
If you want to be informed of messages via the Amiga's
power LED (it will flash the number of messages on the
power LED -- this may look like a Guru and scare you :),
double click on the "useFlashAlert" icon. If you want to be
informed by a prerecorded message (it plays an IFF file
called avm:have1message or avm:havemessages), click on the
"useSayPreRecAlert" icon. If you *don't* want
to be informed of new messages, follow instructions for
the `Call Notifier' on how to "unwatch" mailboxes.
8. If your modem is not connected to serial.device unit 0, see
`Ports Setup' for instructions on how to change the serial
device and/or the unit number.
9. If you have GPFax installed properly, double click on
the icon called "startAVMAndGPFax". If you don't, double
click on the icon called "startAVM". "startAVMAndGPFax"
will start GPFax in the correct mode, make it not listen to
the serial port, and will then run the necessary AVM programs.
For GPFax to run with AVM, you need to make sure that in the
Environment window, the Shared flag is set.
If you have a ZyXEL modem, the Modem Init string should be:
AATE0V1X4&K3&C1&D2S0=0
If you have a LineLink modem, the Modem Init string should be:
AATE0V1X4&K3&C1&D2&R0S0=0
If you have any other modem, try the one for the ZyXEL modem
first. Then try the one for the LineLink modem.
NOTE: GPFax shouldn't be running before you start AVM.
10. Execute the script called "avm:renamevoicefiles". I sometimes
rename voice files. For instance, in going from V1.15 or
earlier to V1.17, I renamed stuff like one, two, etc. to
number1, number2, etc. to facilitate in sorting
stuff in the Player program.
Execute the script called "avm:deletevoicefiles". This will delete
all the obsolete voice files. Note that it won't delete voice files
that are still usable. Only the minimal number of voice files will
be deleted.
11. Run the Player program. This will allow you to record each of
the required messages. See the instructions for `Player' on how
to accomplish this.
If you download the optional voice files (I am distributing them
in a separate archive since many people may want to record their
own voice. However, some people may not have the time to fully
customize AVM with their voice.), you will need to look at the
instructions that come with the voice files.
I would like people to make a standard set of voice messages for
different languages and put them in the public domain. Here's
the naming convention I would like to keep (so people don't have
to download lots of stuff before finding out what's in it).
The .lha file should start with AVMV followed by a three
letter specifier for the language used in the voice files, then the
version number of AVM that it works with. Voice files should
be distributed as IFF files recorded at 9600 samples per second
or greater. The program iff2adpcm is now capable of resampling
IFF voice files to the required sampling rate required by
the different modems/compressions.
AVMVEng1.19.lha (English, 9600 samples per sec., avm1.19)
AVMVFre1.19.lha (French, 9600 samples per sec., avm1.19)
AVMVGer1.19.lha (German, 9600 samples per sec., avm1.19)
If you're running AVM as a simple answering machine and you get
pre-recorded voice files, the only messages you need to "customize"
are "intro1", "intro2", "intro3", and "MailboxGreeting". The
"intro" files are played first (depending on the time of day,
one of the intro files will be played). After the "intro" files
are played, the caller is put into the "Anonymous" mailbox,
which plays "MailboxGreeting", at which point the caller can
send a fax or wait for the beep to leave a message. It is
entirely up to you on what message you want to tell him. Maybe
you could say something like "Hi, this is Al's answering
machine. Press 2 to send a fax or wait for the beep and leave
your message. When you're done leaving your message, press 1.".
If you are running AVM as the three mailbox system, you need
to reccord the file called "level0". This file instructs a
caller on who they may leave messages or faxes for. Unless
your names happen to be Al and Dory, you will need to re-record
this message :) Also, you really should record the messages
described in the paragraph before this.
12. Test things out. Pick up your phone, wait a few minutes until
the phone company gives up and makes your phone line go silent,
then click on Answer Voice in the ServerMan program. This will
instruct AVM to pick up the phone and process it as though
you got a call. Try leaving a message. Then wait for AVM to
hang up. Then click on Answer Voice again and try to retrieve
your message using the touch tone keys.
NOTE: On some phone systems, this will not work. It depends
on the phone company.
13. To run AVM automatically when your computer reboots or is powered
on, you can drag and drop the startAVM or the startAVMAndGPFax
icons into your WBStartup drawer.
14. The file called StandardConfig in the AVMSuite directory should
be edited to your preferences. In particular, when you first install
AVM, it defaults to acting like a simple answering machine. If you
want to try out the multi-mailbox system, you will need to edit this
file. There are also other parameters in this file that you can
change to alter the way AVM and its ARexx scripts work. See
`Configuring with RXSET or SETENV' to see what the different
lines in this file means. NOTE! You will need to quit all the
AVM programs and restart AVM from either of the two provided scripts
(startAVM or startAVMAndGPFax) in order for your new configuration
to take effect.
4. Modem Limitations
---------------------
Although AVM was designed to handle multiple modems, it does not
currently handle multiple types of modems at the same time. In other
words, you cannot have two different modem with different types on two
different serial ports. You can, however, have two different modems
on two different serial ports if they are of the same type.
I will fix this limitation in a future version of AVM. The rest of
this chapter describes the individual limitations for each modem
type.
If I have an encoder for the modem/compression you are using,
then you can use the pre-recorded voice files. Otherwise, you
pretty much have to record the voice files yourself.
4.1. ZyXEL
o If you have an E+ or greater, you can use the CELP compression.
However, there is no CELP decoder/encoder, which means that
you cannot play out these voice files through the Amiga's
sound system.
o If you have a lower ROM version than 6.10a, you should not use
ADPCM3. If you have 6.10a or greater, you can use ADPCM3SYNC
compression. I have personally tried using ADPCM3SYNC and
found that there are still problems with the ZyXEL decoder
losing sync. This means that you will occasionally hear
scratchy noises. Theoretically, with ADPCM3SYNC, if the ZyXEL
decoder loses sync, it should be resynced after 50 milliseconds.
I do not have an encoder for ADPCM2SYNC or ADPCM3SYNC.
4.2. Dolphin
o As far as I know, the only available compression mode is ADPCM2.
o I have not written an encoder for it (it is slightly different
from Zyxel's ADPCM2), so you cannot record through the Amiga.
You can, however, play through the Amiga sound system.
4.3. LineLink 14.4e
o The LineLink can use a compression called SPC. But, the decoder
I wrote for it is not in tip-top shape. Try it to see if you like
it. Be aware, however, that SPC uses more serial bandwidth and
more diskspace. It is, however, fast to decode.
I do not have an encoder for SPC.
o The LineLink cannot detect a calling fax automatically. You will
need to tell your fax callers that they need to follow instructions
on how to activate your fax.
I have implemented something that may enable you to receive faxes
automatically. This only works when you use the two-mailbox
system I developed. Normally, when a caller calls, he is instructed
to press 1 to start the mailbox system. If he doesn't press 1, the
default goes into a mailbox called "anonymous". See `Answer Priority'
to change this default to go into fax mode or data mode.
4.4. Rockwell
o The Rockwell chipset supports ADPCM2, ADPCM3, and ADPCM4. I
am currently limiting AVM to using ADPCM2. There are some
complications in using ADPCM3 and ADPCM4.
o I don't have an encoder/decoder for any of the compressions
used by Rockwell based modems. This means that you cannot
play them to the Amiga or convert IFF files to a voice file.
I hope to find some source code to alleviate this problem.
Fortunately, you can play to the Internal Speaker and it will
also play to the telephone plugged into the back of the modem.
5. Common Buttons and Options
------------------------------
This chapter describes the buttons and options common to most of
the programs in the AVM Suite. This allows me to be lazy.
5.1. Play
Click on this button to play the selected voice file through the
device in `Play to'. You can stop the playing of a message by clicking
on the `Stop' button.
5.2. Record
Click on this button to record the selected voice file through the
device in `Record from'. Again, click on the `Stop' button to stop
the recording process.
After clicking on the record button, watch the modem lights and
wait for the RXD (on the Zyxels) or the IO (on the LineLinks) before
speaking. Depending on the speed of your computer, there could
be a slight delay before the modem actually starts recording. This
is because I need to send commands to the modem to actually start
recording.
5.3. Stop
This stops recording or playing. At this time, you cannot stop
the conversion process once it has begun. Every time you play
something or record something through the Amiga, a converter
kicks in. This converter isn't abortable yet.
5.4. Play to
There are several options that you can choose from. Some of these
options are not available for some of the modems.
5.4.1. Amiga
This option is available only if I have a decoder for the compression
you choose for the voice file. This option will first convert
the voice file into an IFF file (avmtemp:temp.iff) and then play
it using "AGMSPlaySound". The actual playing is abortable but the conversion
process is not. Note that I cache the last played file so that you
can keep playing it without going through the conversion process.
The ARexx script activated by this option is playamiga.avm. You can
modify this script if you would like to use a different player.
5.4.2. TelephoneLine
This option allows you to play voice files through the telephone line.
To use this option, you should first remove the dial tone. You can do
this by pressing a few touch tone keys. Or, you can pick up the phone
and wait for the telephone company to give up on you. <<need to check
if it plays even if you disconnect the phone line from the modem>>
5.4.3. InternalSpeaker
This will play voice files through the modem's internal speaker. The
LineLink doesn't support this.
On the Rockwell modem I tried (Zoom VFDX), it played to the internal
speaker *and* the telephone handset plugged into the back of the
modem.
5.4.4. IFF
This will actually perform a conversion from the voice file to an
iff file. This option is only valid if there is a decoder available
for the compression scheme that you used. In this version, the
output IFF file is avmtemp:save.iff. A future version will allow you
to pick the name of the IFF file.
5.4.5. AmigaDirect
This option plays voice files while it is decoding them. This results
in a small delay from the time you press play to the time it actually
plays (unlike the `Amiga' option, which converts the whole voice file
first). Note that you can only use this option if you have a fast
Amiga. It works on my A3000/25. Try it out on your system to see if
it's fast enough. If it is, you'll like this option.
5.5. Record from
As with `Play to', there are several options to choose from. Again,
some of these options may not be available for some modem types.
5.5.1. Amiga (Record)
This option will activate the rexx script recordamiga.avm. This
script calls AGMSRecordSoundPS3. It will call AGMSRecordSound (a
version that works with most generic digitizers) if you instruct
it to (by double-clicking on the useGenericDigitizer icon).
It calls the digitizing software in such a way that the output is
avmtemp:temp.iff. This IFF file is then converted into the
appropriate voice file by a converter.
5.5.2. TelephoneLine (Record)
This allows you to record your messages using the telephone line.
The only way to get this to work is to pick up the phone and get
rid of that dial tone somehow. As with `Play to', you can do this
by entering a few touch tone keys. Unfortunately, on some systems,
after a while, you'll get the annoying phone company message to
put down the phone. You could wait this out until the phone company
gives you just silence.
What I do is to wait for this silence and record all the messages
I need to in one session.
5.5.3. ExternalMic
This option only works with the ZyXEL modem and the Rockwell based
modem.
5.5.3.1. Rockwell
This option lets you record from the telephone plugged into the
back of the modem. This works rather nicely. You don't have
to kill any dial tones or anything. You can just start recording.
5.5.3.2. ZyXEL
Warning, DO NOT use this option if the modem is still plugged into
the phone line.
To record with this option, disconnect the modem from the phone line,
plug in the handset (some telephones have a handset which plugs
into the actual phone) into the "line" jack of the modem, and speak
into the ear part of the handset (not where you usually talk into).
The reason you should not plug the modem into the phone line when
using this option is that the modem amplifies the signal. If the
modem is plugged into the telephone line, the line signal would be
amplified and could destroy your modem's internal circuitry.
5.5.4. IFF (Record)
This is similar to the Amiga option, except it doesn't actually call
the digitizing software. It assumes that the software placed the
IFF file in avmtemp:save.iff. A future version will
give you a requester to choose the IFF file you want to convert
into a voice file.
5.6. Server
This is the name of the server that will be played to or recorded
from. To change this, click on the popup gadget beside the name
of the field. The compression mode that the server is using
is displayed beside the name of the server.
5.7. Quit
Hmmm...I wonder what this is for :)
6. Player
---------
This program allows you to record/play all of the required
outgoing messages.
6.1. Configure the player
Specifically, make sure the `Play to', the `Record from' and the
`Server' options are what you want them to be.
6.2. Record your outgoing messages
Go through each entry that has a "No" in the "Rec?" column and
`Record' a message for it. What you have to say in that entry would
be displayed in the "What you should say" box. After recording,
you should `Play' the message to make sure it's correct.
Try to stop recording by using the `Stop' button as soon as you finish
talking. AVM "glues" voice messages together for certain things.
For example, when playing the date of a message, it "glues" the
Month voice file with the appropriate number voice files to produce
the date. On slow machines, you may actually need to stop recording
before finishing speaking because there is a slight delay between the
time that you press the stop button and the recording actually stops.
7. ServerMan
-------------
ServerMan shows you all the servers active in a listview. It shows you
the name of the server and its status. If you have several modems
and serial ports, these would appear in the listview.
You can select a server by clicking on the appropriate item in the
listview. After selecting an item, there are several things you
can do to it.
There is a cycle gadget just below the listview. This cycle gadget
allows you to see some of the buttons while hiding others. This
is intended to make this program less cluttered by presenting you
with buttons that you will most commonly use and hiding buttons
which you would normally not use.
7.1. Answer Voice
This makes the server answer the phone as though the appropriate number
of rings was seen by the modem. In other words, the ARexx script
in `Voice Call default', `Voice Call Ring 1', `Voice Call Ring 2', ...
is called. If no RING was seen or an unqualified RING was seen, the
default ARexx script is called. If a RING which was qualified (RING 1,
RING 2, ...) was seen, the appropriate Voice Call n script would be
called.
7.2. Answer Fax
This makes the server answer the phone as though a fax had been detected.
The ARexx script in `Fax Call' gets called. This defaults to
handlefax.avm
7.3. Record Conversation
This feature is really useful for getting evidence against mail-order
companies :) Unfortunately, in the US, you are required by law to
tell the party that the call is being recorded. Nevertheless, it'll
at least keep them honest.
7.4. Answer Data
This button is similar to the `Answer Fax' button. The only difference
is that it calls the ARexx script in `Data Call'.
7.5. Abort Action
This button aborts any actions that may be active in the currently
selected server. This is a useful button especially when a call comes
in and AVM answers the phone. You can make AVM shut up by clicking
on this button. This button sends a general abort to the server.
This general abort message would even abort an action started by
a different program. For example, if you're playing/recording a voice
file through the `Player', you can abort it either with the Player's
Abort button or with this button.
7.6. Close Serial
Instructs the server to close the serial port. This really shouldn't
be necessary since the AVM Server supports the sharing of the serial
port. It is better to just put the AVM Server in `Unlisten' mode.
In addition to supporting the sharing of serial port, the AVM Server,
with the appropriate option in the `Server Config' program set,
also supports the OwnDevUnit protocol for sharing the serial port.
7.7. Open Serial
This opens the serial port. Sometimes, when AVM starts up, it can't
open the serial port because another program was using it in an
unfriendly way. This is a good way to open the serial port in such
cases (but you need to first kill the program that was unfriendly).
7.8. Unlisten
This button makes AVM not listen to the serial port. It doesn't
cause AVM to close the serial port. It just aborts any pending
reads that AVM may have. This allows other programs to open up
the serial port, change serial port parameters, etc.
7.9. Listen
This button reverses the action of the `Unlisten' button.
7.10. Use Fax
This calls the script avmrexx:usefax.avm. At this time, it is configured
to make AVM unlisten and GPFax to listen to the serial port.
7.11. Unuse Fax
This calls the script avmrexx:unusefax.avm. This currently makes
GPFax unlisten and AVM listen.
7.12. Use Data
This calls the script avmrexx:usedata.avm. This currently makes
AVM unlisten.
7.13. Unuse Data
This calls the script avmrexx:unusedata.avm. This currently makes
AVM listen.
7.14. Start Server
If the currently selected server isn't active, this button activates
it. This button, together with the `Kill Server' button is
needed if you change the server parameters in `Server Config'. A
future version of AVM may instruct the servers to use any new
parameters that may be set.
7.15. Kill Server
This issues a quit message to the appropriate server. You can quit
the server when it is waiting for a RING, has closed its serial
port, or is in unlisten mode. You cannot kill a server if it is
doing something else (like answering a call, playing a voice file,
etc.).
7.16. Quit (ServerMan)
This quits ServerMan and kills any active servers which are
not doing anything useful.
7.17. Quit No Kill
This quits ServerMan without killing any servers.
8. Call Notifier
-----------------
This program is basically a flat view of all the mailboxes. It shows
you all the mailboxes, the number of messages in those mailboxes, and
whether you wanted to be informed that there were new messages or not
for a particular mailbox.
Basically, if there is a * in the Watch field of the mailbox entry,
then the program will tell you that there are new messages. It does
this via the alertmessages.avm ARexx script. The default action
to inform you of messages is to "say" something. If you don't like
this behaviour, you can either "unwatch" all the mailboxes, change
the actions within alertmessages.avm, or delete the script altogether.
There is a cycle gadget just below the listview. If you click on this
cycle gadget, you will gain access to some of the buttons. Normally,
the cycle gadget should read "Mailbox Controls". The buttons when
this cycle gadget is on the default are buttons which you normally use.
However, there are circumstances when you want to access the other buttons
(for example, you may wish to change the names of the mailboxes). In that
case, click on this gadget to access the "Configure" buttons.
8.1. Open Mailbox
Depending on the mailbox type, it could open a `LogView' or
a `Scheduler' window for the mailbox that was selected.
8.2. Config Mailbox
This opens a `Mailbox Config' window for the selected mailbox.
8.3. Add Mailbox
This pops up a requester wherein you can type a new mailbox name.
The program then creates the appropriate directories and default
config files for that mailbox. For the unregistered version, this
is pretty useless since you cannot add mailboxes to the
Answer Voice scripts.
8.4. Delete Mailbox
This deletes the mailbox. Only user-created mailboxes can be deleted.
Some of the mailboxes (anonymous, outgoing, outgoingarchive, etc.)
are locked and cannot be deleted. They are required for the correct
operation of AVM.
8.5. Watch Mailbox
This is a toggle function. This causes the mailbox to be watched
by the Call Notifier program. If there are any messages in any of the
"watched" mailboxes, the Call Notifier will inform you.
8.6. Rescan All Mailboxes
This button goes through each mailbox and counts the number of
messages in each mailbox.
This button isn't really needed. Normally, when a new message is
added to a mailbox, this fact is broadcast to all interested parties.
This includes the Call Notifier program.
This button is here just in case the Call Notifier somehow missed
a broadcast (this should never happen, though) from the AVM Server
that a new message has arrived in a particular mailbox.
8.7. Save (CallNotifier)
This button saves the Watch configuration. You can temporarily
unwatch a particular mailbox. But, when you quit the program or
reset the machine, the old Watch configuration will come back up.
8.8. Shut Up
This check gadget shuts the Call Notifier up. If you get annoyed with
it telling you that you have messages, enable this check gadget. The
Call Notifier will disable this gadget if one of the "watched"
mailboxes gets a new entry. The Call Notifier enables this gadget
if you Open any of the watched mailboxes.
8.9. Real Name
When you select a mailbox, its name will appear in a string gadget.
When you edit this string gadget, the name will be modified. You will
then have to save the new configuration if you want to keep that new
name the next time you start up the Call Notifier.
9. LogView
-----------
This program shows you all the messages for a particular mailbox.
It provides you with information on each message such as the Time/Date
the message came in, its type (Voice, Fax, Unknown), and its length
in seconds.
When you select a particular message in the listview, additional
information is displayed. This includes a Comment,
CID Name, CID Number, and Return Number.
9.1. Comment
For faxes, this field tells you how many pages the fax had. This
field is user-modifiable. You can archive a message and type
in a comment in this field so that you know what the message contained
without having to listen to the message again.
9.2. Name
This field displays the CID Name, if there was one.
9.3. Number
This field displays the CID Number, again, if there was one.
9.4. Return Number
If the caler enters a telephone number via the "poor man's
caller id" feature, it will be displayed here.
9.5. Play or View
You can select a message and hit this button to get it played
or viewed, if it's a Voice or Fax type. Alternatively, you can
just double-click on the listview entry.
If the entry is a fax, GPFax will display the fax.
9.6. Reply
This creates a log entry in the `Scheduler' and opens a
`SchedulerView' for it.
9.7. Archive
This puts the message or fax in the Archive mailbox. If you are
already viewing the Archive mailbox, then this button doesn't do
anything.
9.8. Delete
This deletes the log entry and the voice or fax files associated.
At this time, this action is a bit slow. The reason for this is that
this button activates an ARexx script which actually deletes the
log entry and its associated voice or fax files. It deletes those
files using the Shell's Delete program. To speed up this action,
you can make the Delete program resident.
9.9. Send
This creates a new entry to be scheduled. It sets it up so that
the originating mailbox is the mailbox that you are currently
viewing.
9.9. Save Log
If you have changed anything in a particular log entry that you
want to save, click on this button. For example, if you changed
the comment of a log entry, you need to click on this to get it
saved. You don't need to use this option if you are archiving
the log entry (that automatically saves the entry before sending
it off to the archive mailbox).
9.10. Choose Mailbox
At the top of the window is the name of the mailbox being viewed. You
can change the mailbox being viewed by typing it in, or by clicking
on the "select" popup gadget to the right of the field. Then, double
click on the name of the mailbox you want to view (in the listview that
pops up).
10. Mailbox Config
------------------
This program allows you to configure the options that the mailbox
may have. If you don't have a scheduler, some of these options
are pretty useless. The only thing of interest to UNREGISTERED
users would be the `Password'. This is what you need to type
in to gain access to the maintenance mode.
Several of the Auto Options have "On Demand" fields. If you type
in numbers here, that means that the mailbox caller can only activate
that option if he/she knows your On Demand password.
10.1. Password
This is the password necessary to get you into maintenance mode.
From maintenance mode, you can also retrieve your messages,
record a personal message, change the password, etc. All of this
can be done remotely.
10.2. Forward Faxes
When this option is enabled, any new faxes are automatically forwarded
to the number in the Tel. # field.
The default script should be DEFAULTSENDER.
10.3. Call Sysop
When new messages are received and you have the Scheduler, AVM will
call you up at a particular telephone number.
The default script should be DEFAULTSENDER.
If the Announce Tel. # checkbox is enabled, then the Tel. # will
be announced to the caller right after the Personal message is
played and before the Instructions on how to leave a message
is played (MailboxGreeting). The caller will be instructed to
press 3 to hear the telephone number again. If he doesn't, then
he can still leave his message and AVM will take care of calling
the mailbox owner.
10.5. Call Pager
If you have a pager, this option will let AVM call your pager when
a new fax or message arrives at your mailbox.
The Script field contains the name of the ARexx script that is called
to accomplish this paging mechanism. At this time, the only
script you can use is DEFAULTSENDER.
10.6. Alert Sysop
When a caller enters a mailbox, the Amiga will inform the "sysop" that
a mailbox was entered. This is useful if you only want to pick up
the phone when a certain mailbox was accessed.
With the On Demand option enabled, the Amiga will not alert you
when the mailbox is accessed unless the caller leaves a message and
actually chooses the "Alert" option. If the On Demand option is
disabled, the Alert mechanism is activated once the caller enters
a mailbox.
The Script filed contains the name of the ARexx script that is called
to accomplish the alerting mechanism.
The Default Script should be ALERTSYSOP. This script just plays
an iff file called "pickup.iff", which is located in the mailbox
you are configuring. For example, if you are configuring the
Anonymous mailbox, you should put have an iff file called
"avm:anonymous/pickup.iff".
10.7. Save
This saves your options.
10.8. Cancel
This cancels everything.
11. Server Config
-----------------
The Server Config program allows you to create new servers, or configure
the currently available servers.
11.1. Server Config (Button)
This button opens up a window which has a bunch of options which you may
set for the currently selected server. At the top of the Server Setup window
is a cycle gadget. By selecting an item in the cycle gadget, the gadgets
presented to you below change.
11.1.1. Ports Setup
11.1.1.2. ARexx Port Name
This is the name of the ARexx port of the server. You should not include any
spaces in the name.
11.1.1.3. Serial Port
This is the device name of the port that the modem is hooked up to.
11.1.1.4. Unit Number
This is the unit number of the port that the modem is hooked up to.
11.1.2. Scripts setup
This set of gadgets allows you to change the names of the scripts that
are called when certain events occur.
11.1.2.1. Voice Call default
This is the name of the ARexx script that gets called when the server
is instructed to pick up the line and no ring was received or an unqualified
RING was received (unqualified RING == Type 1 distinctive ring).
To enable distinctive ring or CID, look at the section entitled
`Caller ID and Distinctive Ring'.
Note that it is possible to use the distinctive ring feature even though
your modem doesn't support it. Results vary with modems. If the modem
eats the rings if they don't occur 4 seconds apart, then you're out of
luck. If the modem reports double rings or triple rings within a span
of 2 seconds, then AVM will be able to detect the distinctive ring.
You can only use this feature *if* `Rings with messages' is greater
than 1.
If you have distinctive ring set up, you can put "answerfax", "answerdata",
or "answervoice" in any of the Voice Call scripts. So, if somebody
calls a number causing a short-short distinctive ring to occur and you
put "answerfax" in the `Voice Call Ring 1' field, then he will always
receive a fax tone.
11.1.2.2. Fax Call
This is the ARexx script that gets called to handle a fax call. The
default should be "handlefax".
11.1.2.3. Data Call
This is the ARexx script that gets called to handle a data call.
The default should be "handledata".
11.1.2.4. Silent Answer
This is the ARexx script that gets called if the phone stops ringing
before reaching the number of rings required for AVM to pick up the line *and*
the number of rings received is greater than or equal to the number in
`Silent Answer rings'.
11.1.2.5. Record Conversation (Script)
Script to handle recording a conversation.
11.1.2.6. Voice Call Ring 1
Script called when the modem receives a type 2 ring.
11.1.2.7. Voice Call Ring 2
Script called when the modem receives a type 3 ring.
11.1.2.8. Voice Call Ring 3
Script called when the modem receives a type 4 ring.
11.1.2.9. Voice Call Ring 4
This is currently not used.
11.1.2.10. Ring Script
This script gets called right after the modem receives a ring from
the modem.
This script gets called with the variables "RINGS", "DISTINCTIVERING",
"CIDNAME", and "CIDNUMBER" set. If you type in "AlertRing" into this
field, the file "avmrexx:alertring.avm" gets run on each ring (except
the last ring before AVM decides to answer the phone). At this time,
"AlertRing" uses AGMSPlaySound to play an IFF file called "avm:ring.iff".
Note that it only plays the ring between the hours of 9am and 11pm.
This is what I currently use so that people can call up my system
late at night to log onto my system. This way, I don't hear the rings
at all.
Another use of this Ring Script is to announce the name of the caller
or his telephone number. This script gets called with CIDNAME and
CIDNUMBER for this purpose. The type of distinctive ring is placed
in the variable DISTINCTIVERING. The number of rings received so
far is placed in the variable RINGS.
Yet another use of this script is to log information to some file
(or another program) that a call was received at a certain time.
This is useful if you just want to know if your phone rang while
you were out.
11.1.3. Rings setup
11.1.3.1. Rings with messages
This is the number of rings required to be seen by AVM before picking up
the phone *when* there are messages in any of the "watched" mailboxes. This
feature only works if the `Call Notifier' program is active.
11.1.3.2. Rings without messages
This is the number of rings required to be seen by AVM before picking up
the phone when there are no messages in any of the "watched" mailboxes.
11.1.3.3. Silent Answer rings
If the phone stops ringing before AVM answers the phone and the number
of rings seen is greater than or equal to this value, then the Silent Answer
feature is activated.
11.1.4. Voice parms setup
11.1.4.1. Modem Type
There are three types of modems that are supported. This option selects
one of the three (ZyXEL, Dolphin, LineLink).
11.1.4.2. Setup String
This is the string (usually an AT command) that is sent to the modem
prior to entering voice mode. This is usually AT&F or ATZ to reset
the modem. You can also use this setup string to enable distinctive
ring or CID options (see your modem's manual on how to accomplish that).
11.1.4.2. Voice Setup String
This is the string that is sent to the modem after entering voice mode.
You can use this string to add or modify voice parameters that were
not handled by the program. For example, you can use this string to
adjust the voice recording gain of the LineLink modem (use AT#VG=x,
where x is the gain. 119 is the default value).
11.1.4.3. Max rec len (secs)
This is the maximum number of seconds that a recording is allowed to
be. This timeout is there because sometimes, the modem doesn't detect
hangups correctly. Without this timeout, you could easily fill up
your hard disk.
11.1.4.4. Silence Interval
This is the number 10ths of seconds of silence required before the modem
reports to AVM that it has heard silence. The default value is 70, which
translates to 7 seconds.
11.1.4.5. Silence threshold
This is an adjustable parameter for telling the modem what to treat as
silence. Note that the LineLink modem has two settings only (16 or 17).
11.1.4.6. Compression
Your modem compresses voice data to reduce the amount of storage needed
for the resulting voice files. Some compressions are better than others.
ZyXEL modem users should choose between ADPCM2, ADPCM3, CELP, ADPCM2SYNC,
or ADPCM3SYNC. Note that ADPCM3 doesn't work for me. ADPCM3SYNC is supposed
to work, but it has the same symptoms as ADPCM3 (scratchy noise).
CELP only works for E+ or greater modems.
MTD Dolphin users have only one compression, MTDADPCM2.
LineLink users have only one compression available, LLCVSD7200.
11.1.4.7. Ringback
Ring goes away and ring never appears.
These two parameters are for dial-out only. They tell the modem
how long to wait for the ring signal to go away or how long to wait
if it doesn't ring. When calling out, the modem listens for ringing.
If it doeesn't receive a ring before the Ringback Never Appears timer
goes off, it will assume that the called party picked up the phone.
On the other hand, if it got a ring, it will keep listening for rings.
If it doesn't hear a ring before the timer goes off, it will assume
that the called party picked up the phone.
Both parameters are in 10ths of seconds.
11.1.4.8. AVMTemp for Record
Certain computer setups cannot handle receiving serial data and
writing to the hard disk at the same time (you tend to lose characters
or get serial port errors). If this is the case, or if you want to
avoid writing to the hard disk in small increments, select this option.
This will write the voice file to AVMTemp: (which is usually RAM: )
first. When the recording is done, it is transferred to the hard disk.
11.1.4.9. AVMTemp for Play
Certain setups cannot handle reading from the hard disk and writing
to the serial port. Check this option if you have trouble playing
voice files directly from the hard drive.
11.1.4.10. Use OwnDevUnit
This instructs the AVM Server to use OwnDevUnit. This allows AVM to
coexist with other programs that use this form of serial port locking
mechanism.
11.1.4.11. Tone Dial
This is the method to be used when dialing (enable this gadget for touch
tone or disable it for pulse) a number.
11.1.4.12. Max Wait For Answer
This is the number of seconds AVM will wait for the phone being dialed
to be picked up.
11.1.5. Advanced Flags
These flags help to configure the AVM Server. You really shouldn't have
to touch these flags. Contact me if you are considering changing any
of the default settings. ***they are set to the proper values***
11.1.5.1. Enable or Disable Flag
This enables or disables a particular flag. If a "#" symbol precedes
the name of the flag, it is disabled.
11.1.5.2. Add Flag
Allows you to add a flag of your own. You really shouldn't have to
do this.
11.1.5.3. Delete Flag
Allows you to delete one of the flags.
11.2. Add Server
Allows you to add a new server. As mentioned before, you cannot mix two
different kinds of modems on the same system. This is because it is quite
complicated to have two sets of voice files for each modem type. Plus, if
someone leaves a message using one modem, you will not be able to retrieve
the message from the other modem. Until I figure a nice way of doing this,
the restriction stays.
11.3. Delete Server
Deletes one of the servers.
11.4. Save (Server Config)
Saves the configuration of the servers. If you change any of the parameters,
you should click on this gadget to save the changes. Then, you will need
to kill the server if it is active (use `Kill Server') and restart it
(use `Start Server').
12. Logger
-----------
The logger is a program which prints useful debugging information
from the servers and from the ARexx scripts that are run to control
the servers. It is really not too useful if AVM works for you. In
fact, you should, in general, not run the Logger as it slows down
the system since it prints a *lot* of debugging information.
12.1. Save (Logger)
The "logger" automatically writes to a file called "ram:logger.save"
after every 200 lines of debugging information that it receives. If you
wish to manually save what is in the buffer, click on this gadget.
Every time the buffer is saved (it is appended to the above-mentioned
file), the listview is cleared.
13. Scheduler
-------------
This program shows you all the outgoing entries for a particular
mailbox. Currently, AVM only works with one outgoing mailbox (called
'Outgoing'). It provides you with information on each outgoing
message such as the Time/Date when the message is supposed to go out,
the number of retries left before the scheduler starts ignoring this
entry, its originating mailbox (who created this entry), the telephone
number the message is going to, and the type of message (voice or fax).
The AVM Scheduler wakes up every minute to process any entries in the
listview. The listview is sorted so that the message that will go out
next is at the top. The Next Event field tells you if and when a next
event will go out. Note that it is entirely possible to have many entries
in the outgoing mailbox but not have anything ready to be scheduled.
This could happen if all the entries have 0 Retries left.
13.1. Edit
This opens up a `SchedulerView' to edit the currently highlighted entry
in the listview. You can also double-click on the entry to open up
this SchedulerView.
13.2. Archive (Scheduler)
This archives an entry. The log and its associated files are moved to
the OutgoingArchive directory.
13.3. Create Entry
This creates a new entry to be scheduled. The originating mailbox is
"anonymous" if you use this method to create a new entry to be sent.
A `SchedulerView' is also opened up to edit the new entry.
13.4. Delete (Scheduler)
This deletes the entry in the mailbox.
13.5. Enable Scheduler
Normally, you leave this check gadget on. If you disable it, the
scheduler will not process outgoing events. This is useful if you
don't want the scheduler to suddenly pick up the phone and start
dialing when you are using the phone.
13.6. Send (Scheduler)
Press this button to manually send a message or fax. You need to first
highlight the message or fax that you want to send. This is useful
if you want to test the Scheduler or if you scheduled a fax for a later
time but wanted to give it a shot now.
14. SchedulerView
-----------------
The SchedulerView allows you to edit an entry that you want to be
sent out. At the top of the window is the name of the mailbox that
the entry was in. Currently, AVM works with only one outgoing mailbox,
called "Outgoing". Below the name of the mailbox is the actual
name of the entry. This probably isn't very useful to you, but is there
for your information only.
There is a cycle gadget which allows you to view other control buttons
that are less frequently used (to avoid user interface clutter).
14.1. Time
This is the time that the message is to be delivered. You can
adjust this time using the buttons to the right of this field.
+m/-m increment or decrement the minutes, +h/-h increment or
decrement the hours, and +d/-d increment or decrement the days.
14.2. Telephone
This is the telephone number that the message is to be delivered
to.
14.3. Comment (SchedulerView)
This is a user-specifiable comment. Type anything into this to
describe the entry.
14.4. Retries
This is the number of retries to do to send this message out.
14.5. Interval
This is the number of minutes to wait before we try again (assuming
there are Retries left).
14.6. Filename
This is the name of the file to send out. At the beginning, this
field contains a unique filename that you can record into without
thinking twice about overwriting some other file. Its type is
usually set to Voice. Beside the string gadget is a button that,
when you click on it, will allow you to choose another file. You
can use this if you want to send a fax rather than a voice message.
You could either type in the filename of the fax file directly or use
the filechooser button. Beside this button is a cycle gadget which
tells the Scheduler what type of file is being sent. If you are sending
a fax, select Fax. Otherwise, select Voice.
14.7. Play or View (SchedulerView)
Same as in LogView
14.8. Save Log (SchedulerView)
Same as in LogView
14.9. CID Name and CID Number
These are just the fields copied over if you were replying or
forwarding to some message which had these fields set.
14.10. Originating Mailbox
This is the name of the mailbox that the outgoing message
originated from. A remote caller can only view outgoing messages
from the Anonymous mailbox and his own mailbox.
14.11. ARexx Send Function
This is usually DefaultSender, which knows how to send voice
and fax files. Fax files are sent through GPFax.
When a message is sent using DefaultSender, the called party
can either acknowledge the receipt of the message (by pressing *),
or can access the `Originating Mailbox' (by pressing 9 and entering
a password), play the message agin (by pressing 1) or can simply
hang up. DefaultSender can be used to call people who don't
have touch tone phones since the message will be repeated up to
three times even though nobody pressed a key.
14.12. Introduction File
Choosing Default will play the default file, which is located
in the originating mailbox's Voices directory. In other words,
if the originating mailbox is "anonymous", Default would play
the voice file "avm:anonymous/voices/Introduction" when a voice
message is sent. If you choose Personalize, then the introduction
message that will be sent will be "local" to the outgoing
message.
Note that at this time, the Introduction is only played when sending
an outgoing voice file. If you send a fax, the Introduction is
not played.
14.13. Play Intro
Plays the introductory voice file.
14.14. Record Intro
Records the introductory voice file.
15. AVM
-------
AVM is the server that runs in the background. It has no user interface
and can only be run from the CLI. When `ServerMan' starts, it runs
all the servers it knows about.
If you wish to run the AVM server manually, its CLI template is:
avm servername/a
where servername is the ARexx port name you gave it using the `Server Config'
program. Remember that you should probably use the "run" command when
running the AVM server manually, as in:
run >nil: <nil: avm Server.lin
The only way to tell that the AVM server is running is through
the `ServerMan' program.
16. VoiceMail Instructions
--------------------------
This chapter describes the "user interface" presented to a caller
of this system. I will not document everything that you can do,
but will try to give you a general idea of what AVM is capable
of. Hopefully, the voice prompts are friendly enough that you
can figure out stuff for yourself.
16.1. Fax and Data tones
At any time, when AVM is recording, playing a message, or
waiting for the remote caller to press some telephone key,
if a fax tone is received, then the fax program is automatically
started. If a data tone is received (some newer modems emit
modem calling tones), the data program (BBS) is started. At
this time, the only fax program that is supported is GPFax and
the only BBS supported is AXsh. I think it should be easy to
support other types of BBSes, but would require more
thought to support other FAX programs. avmrexx:startbbs.avm is the
script that actually runs AXsh. Note that certain modems
cannot detect Fax tones or Data tones. So, what I just described
may not be true for your setup.
16.2. Standard User Interface
I tried to make the menu system as standard as possible. Pressing the
'*' symbol at any menu should hang up the system. This is good to know
because you may be late in getting to the phone. Pressing '#' usually
brings you back to the previous menu. Pressing '0' usually replays
the menu's voice prompt.
16.3. Remote Caller
When somebody calls, an initial greeting is played over the telephone
line to the caller. This varies depending on whether you have set
AVM up for TIMEOFDAY, RANDOM, etc. (see `Introduction Messages')
If you configured AVM to run in multi-mailbox mode, the caller
is then instructed to press 1 to start voicemail (at this time,
he can also press 2 to send a fax or 5 to start a BBS). If he
does not press any key in the time allowed, then the caller is
either placed in the Anonymous mailbox (where he can record
a message), or AVM can start Fax or Data mode. See the section
`Answer Priority'.
If you decided to use AVM as a simple answering machine, then
AVM will automatically put you into the Anonymous mailbox
after the initial greeting. Note that you can still press
2 to start the Fax program or 5 to start the BBS program
even while AVM is playing the instructions on how what
to do ("...wait for the beep, leave your message...").
When entering a mailbox, the first thing that is played is
the mailbox's Personal message. You can record this personal
message remotely or using the Player program. To record it
remotely, you first need to get into maintenance mode and choose
"Record a Personal Message". If you want to record it using
the Player, you need to run the Player, then type in
avm:anonymous/voices/Personal
into the string gadget below the listview containing a list
of filenames. Note that you need to replace "anonymous"
be the directory name of the mailbox (i.e. mailbox1, mailbox2,
etc.) if you want to record personal messages for mailboxes
other than the Anonymous mailbox.
After the personal message is played, then the telephone
number of the mailbox owner is played (assuming you set
the Announce flag in the MailboxConfig program for this
mailbox *and* there is a telephone number to announce).
After the telephone number is announced, then the instructions
for leaving a message ("...wait for the beep, leave your
message...") are played. Then, a beep is played (or a user
defined voice file containing some form of beep), then
AVM starts recording. If the caller presses 1 during any of
the messages described above, he will be taken directly to
the beep, where he can leave a message. This is useful for
people who already know how to use your system and want to
skip all those messages.
After the caller leaves a message, he can press 1. This will get him
into another menu which allows him to leave another message (in case
he got cut off because he exceeded the timeout for recording), leave
his telephone number, send a fax, get into data mode, start
maintenance mode, etc.
To get into maintenance mode, you need to first access a particular
mailbox. Then press 9 while it's playing the Personal message,
the mailbox owner's telephone number, or the instructions for
how to leave a message. You can also enter maintenance mode
after recording a message.
17. Configuring with RXSET or SETENV
------------------------------------
You can configure this voicemail system to a certain extent. Look in the
file "avm:StandardConfig". This file contains default values
for all of the "environment" settings you can adjust. Note that
"avm:StandardConfig" is executed by startAVM and startAVMAndGPFax.
These "environment" settings are described in this section.
17.1. Introduction Messages
When AVM answers the phone, it plays 1 of 7 files (these files are called
avm:voices/intro1, avm:voices/intro2, etc.), depending on certain
options you set. You can choose any of the seven files to be played,
or you can have one played for each day of the week, or you can have
one played depending on the time of day (morning, afternoon, evening),
or you can have it pick one at random.
To play a particular file (choose 1 to 7), you would do the following:
rxset AVMIntroductionType 1
To play something based on the day of the week (1=Monday, 2=Tuesday, etc.)
rxset AVMIntroduction DAYOFWEEK
To play something based on the time of day (1=morning, 2=afternoon, 3=evening)
rxset AVMIntroduction TIMEOFDAY
To play one of the seven files randomly
rxset AVMIntroduction RANDOM
17.2. Time Format
You can control what is said when playing a time.
rxset AVMTimeFormat "%hours12 %minutes %pm"
The line above will cause AVM to play the hours (1-12), followed by
the minutes, then am or pm, depending on whether it's before 12pm
or after 12pm respectively.
To play the time in 24 hour format,
rxset AVMTimeFormat "%hours24 %minutes"
will do it. You can play any voice file in between any of the time
specifications by typing a filename (its full path). For example,
rxset AVMTimeFormat "avm:voices/TheTimeIs %hours12 %minutes %pm"
will cause AVM to play the message in avm:voices/TheTimeIs, then
the time in the 12 hour format.
Note that the voice files should not have any spaces in their names.
17.3. Date Format
You can control the order and voicefiles that are played when playing
a date. To do this, do a:
rxset AVMDateFormat "%month %day"
This will play the month first, followed by the day of the month. If you
want to play a particular voice file anywhere in between, you only have
to specify the name of the filename in the AVMDateFormat string.
For example, you can do this:
rxset AVMDateFormat "avm:voices/TheDateIs %month %day"
This will play the file in avm:voices/TheDateIs, followed by the month,
then by the day of the month. Note that the voice files should not
have any spaces in their names.
17.4. Simple or MultiMailbox
You can make this system be a simple answering machine, where the caller
will not have to press any keys to get to leave a message. To do a simple
answering machine, do the following before running any of the programs in
the AVM Suite.
rxset AVMSimpleAnsweringMachine YES
To use the two mailbox system, do the following:
rxset AVMSimpleAnsweringMachine NO
Note that the default is to use a simple answering machine.
17.5. Playing Numbers
Normally, AVM concatenates two numbers when it plays a 2 digit number.
This reduces disk storage in having to store the all the possible
numbers. However, I have been told that the concatenation is language
specific. So, you have the option of recording all 59 numbers (I can
only play 0 through 59 at this time). To tell AVM to use the
non-concatenating method, you do:
rxset AVMDirectDDNumber YES
To use the concatenating method, you do:
rxset AVMDirectDDNumber NO
17.6. Time and Date Specification
LogView, Scheduler, and SchedulerView all show times and dates. You can
change the format of the time and date that is displayed. To do this,
you need to set an environment variable called AVMTIMEDATEFORMAT.
Be careful with this!
In the environment variable, special character sequences get replaced by
the appropriate time or date information. See below for an example:
%a = abbreviated weekday name
%A = full weekday name
%b = abbreviated month name
%B = full month name
%c = locale's appropriate date and time representation
%d = day of month (1-31)
%H = hour (00-23) in 24 hour clock
%I = hour (00-12) in 12 hour clock
%j = the day of the year (001-366)
%m = month (01-12)
%M = minute (00-59)
%p = equivalent of AM & PM
%S = second (00-61)
%U = week number of year (00-53) (the first sunday as the first day of week 1)
%w = weekday (0-6)
%W = week number of year (00-53) (the first monday as the first day of week 1)
%x = locale's appropriate date representation
%X = locale's appropriate time representation
%y = year without century (00-99)
%Y = the year with the century
%Z = time zone name or abbreviation
%% = percent sign
setenv AVMTIMEDATEFORMAT "%H:%M %b %d"
If you don't set AVMTIMEDATEFORMAT, the default is "%H:%M %b %d", which
would display something like "15:59 Dec 5".
17.7. Scaling output
I added a new environment variable called AVMSCALEADJUST for CVSD decoding.
If you set AVMSCALEADJUST to -1 (via a setenv AVMSCALEADJUST -1 in the CLI),
it will double the translated output. If you set it to -2, it will quadruple
the output. I think -1 and -2 are the only sane inputs here (and 0, of course).
Note that you cannot use fractions here. You can only do things in multiples
of two (double, quadruple, halve, etc.). Scaling is done with a simple bit
shift for speed (not a floating point multiply or divide). Doing a multiply
or divide would result in not being able to use AmigaDirect with a 25 MHz 030.
17.8. Answer Priority
When AVM is setup as a multi-mailbox machine (not a simple answering machine),
you have a choice of what to do if the person calling doesn't press 1 to start
voicemail. Normally, you would put him automatically into the anonymous
mailbox. However, some people would rather put the caller into fax mode
or data mode. This is useful especially if your modem doesn't support
fax CNG detection (which simply means that the modem can't detect the special
tone that a fax normally emits when it is sending). If you would like to
automatically receive faxes, then you will set the answer priority to fax.
So, if your caller doesn't press 1, he will get a fax tone.
To set fax priority, you would do:
rxset AVMAnswerPriority FAX
For data priority, you would do:
rxset AVMAnswerPriority DATA
And for voice priority (the default), you would do:
rxset AVMAnswerPriority VOICE
Edit avm:standardconfig to change the default permanently.
17.9. ADPCM2IFF Converter
The ADPCM2IFF converter (actually, this converter does handles all of the
compressions) can now use a "slow" version of the CVSD to IFF converter
that is more accurate. To do this,
setenv AVMSLOWCVSD YES
The default for this option is YES.
17.10. Pre-Converting
When someone calls and leaves a message, AVM can be instructed to
preconvert the voice file into an IFF file. So, when you get home,
and your press the play button, you will immediately hear the voice
message. This is useful if AmigaDirect doesn't work for you (either
because the decompression routines are too slow or because you have
an unaccelerated Amiga). By default, the pre-convert feature is
turned off. To turn it on, you do a:
rxset AVMPreConvert YES
The default for this option is NO.
Note that the ADPCM2IFF program will be run without a GUI when
preconverting files. It will also be run at a lower priority
(specified by the AVMADPCM2IFFPRI environment variable).
17.11. Priorities
You can set the priorities of some of the AVM programs by using
the setenv command. To set the priority of the AVM Player, the
environment variable is called "AVMPLAYERPRI". For the AVM ServerMan,
the environment variable is "AVMSERVERMANPRI". For the actual AVM
servers, the environment variable is "AVMSERVERPRI".
setenv AVMPLAYERPRI 0
setenv AVMSERVERPRI 0
setenv AVMSERVERMANPRI 0
setenv AVMADPCM2IFFPRI -5
17.12. Playing while converting
You can preview a voice file (if you have a slow amiga and don't
use the PreConvert feature or the AmigaDirect feature) by:
rxset AVMPlayWhileConverting YES
The default is NO.
17.13. Old ZyXEL Conversion
If you have pre-6.10 ZyXEL roms, you should set this to YES.
setenv AVMOLDZYXEL YES
The default is NO.
17.14. User Beep
You can replace the beep that is played right before AVM
starts recording a new message into a mailbox. You can use
this feature to get fancy -- for example, you can tell your
caller to leave a message after the explosion. When using
this feature, make sure there is as little silence as possible
at the end of the beep voice file (since the caller may start
speaking right after the voice file gets played). You do
not want him to start speaking when you're still playing
the voice file -- he won't get recorded.
The file that gets played instead of a beep is
avm:voices/userbeep. You can use the AVM Player to
record your user-defined beep.
To enable this feature, do a:
rxset AVMUserBeep YES
The default is NO.
18. History
-----------
V1.0
o first MUI release to Beta testers (not much feedback due to
difficulty in installing)
V1.1
o commands sent to the modem are not paired anymore (AT+VRA=5 +VRN=6)
o made easier to install
o added some icons
o added lots more flags to control the AVM server
o By default, we now wait for rings in Voice mode. So, the only command
we need to send to the modem when it rings is a "pick up the line"
command. This reduced the chance of getting mixed up when another RING
came in while sending the modem setup strings. It also made the
answering of the phone much quicker.
V1.2
o added more icons
o added icon for avm.doc
o should now work with the GVP IO Extender (change in AVM server)
V1.3
AVM Server
o added `Ring Script'
o added unsizeable window for the AVM Server (unregistered version)
Server Config
o added `Ring Script'
V1.4
LogView
o fixed problem in LogView of not being able to edit any of the string
gadgets
AVM Server
o added another flag in voice.c for Dolphin modem (NeedsATHToHangup).
Hopefully, that will solve the problem of not hanging up.
ARexx scripts
o Fax mode is now available as an option right at the beginning.
Press 2 to send a fax, 5 for data mode.
o Data mode is now available from the mailboxes (5=data) and from the
intro to the mailboxes (5=data).
Config files
o Added s48.1=1 to the setupstringav. This makes sure that when we
are doing an ATA from within Data mode, the modem doesn't try to
receive a fax if the modem failed a handshake.
o Added flag "NeedsATHToHangup" to Dolphin advanced flags.
Scripts
o I moved the all the files which begin with "use" to the directory called
DefaultScripts. These script files are necessary only if you want to
change the configuration of AVM. Note that these scripts were originally
written to help make AVM easier to install. Once I wrote the Installer
script, these scripts no longer became necessary. But, they may serve
some purpose, so they are still included with the release.
V1.5
Server Config
o Made recording length 1000 secs. max
Programmer
o Made recording length 1000 secs. max
AVM Server
o Changed "No Name" and "No Number" to blanks.
V1.6
AVM Server
o Fixed bug when you closed the serial port and then killed the server.
o Status now shows 0 rings, 1 ring, 2 rings, etc. No more (s).
o Added DIAL arexx (it doesn't seem to work too well for the ZyXELs.
These modems don't seem to pay attention at all to the VRN and VRA
parameters -- at least that's as of 6.11 -- I haven't checked if
6.11a is any better).
Server Config
o Added checkbox for Dial Tone (vs. pulse)
o Added maximum time to wait for a VCON after dialing a number
ServerMan
o Made it less cluttered (by grouping hardly used buttons and hiding
them)
All MUI Binaries
o Will now say why the application could not be created (ran out of memory,
program already running, etc.).
ARexx Scripts
o Made a simpleanswervoice.avm which acts like a simple answering machine.
But, you can still enter data mode, fax mode, etc. It puts messages into
the anonymous mailbox. To use this new script, just use the ServerConfig
program to use "simpleanswervoice" instead of the usual "answervoice".
V1.7
ARexx Scripts
o Added an experimental secretary.avm (and callup.avm) to repeatedly dial
out until connected. To use it, you need to say something like:
"rx avm:rexx/callup.avm 4714043". "callup.avm" looks for the server
in "player.cfg", then calls "usebracket.avm" with the server, which
eventually sets things up properly and calls "secretary.avm".
o Fixed abort.avm since it didn't properly terminate AGMSRecordSound
o Modified abort.avm to work with AmigaDirect
o Modified play.avm to work with AmigaDirect
o Added ARexx script called playamigadirect.avm to call adpcm2iff with
correct arguments to make it play to the audio device.
o Modified alertmessagessay.avm so that it doesn't speak if the CLIP
'AVMBusy' is greater than 0.
o Modified usebracket.avm to set 'AVMBusy' to 1 higher than its current
value. This prevents alertmessagesay.avm from speaking while the AVM
Server is playing with the modem.
o Modified playamiga.avm and playamigadirect.avm to set 'AVMBusy' to 1
higher than its current value. This prevents "speaking" while we're
playing messages through the Amiga speaker.
o Added 7 introductions
o Added recording of 7 introduction or choosing which method of
playing the introductions
o Added AVMIntroductionType
o Added selection of simple answering machine or 2 mailbox system
o Added AVMDateFormat and AVMTimeFormat
o Added AVMDirectDDNumber, which allows you to record all 59 numbers
o Added accessing of anonymous messages when in your own mailbox
o Says how many messages in your mailbox and in the anonymous mailbox
when you enter maintenance mode.
o Added AVMSimpleAnsweringMachine
AVM Programmer
o Added Dial node
o Added Delay node
AVM Player
o Added a way of specifying a filename to be recorded or played
AVM Server
o Added Delay rexx command (this delay is breakable by sending the
server an abort message)
o Changed DialNumber() so that it sends an A instead of an AT when
aborting the dial command (or timing out before somebody answers).
o Added ABORT to the list of messages that the server listens to in
"use" mode. This ensures that if the server receives an ABORT message,
it will go back to "unused" mode. Then, any ARexx script should
automatically abort because any new commands it sends to the server
will get replied with 20 as an error code. If I find a bug related
to aborting, I should probably do an "assume(UnknownMode)" when we
get this abort message. We should look for all "assumes" in the
ARexx scripts to make sure they are safe with our modified way of
aborting. This modified way of aborting will ensure that abort
messages are not lost.
Call Notifier
o Added shut up button.
Iff2Adpcm
o Made increment of gauge smaller and more consistent
o Fixed bug when called from the CLI with invalid arguments. It used
to crash.
o Can stop conversion by sending an abort message to the program's ARexx
port or by clicking on the close gadget.
Adpcm2Iff
o Made increment of gauge smaller and more consistent
o Fixed bug when called from the CLI with invalid arguments. It used
to crash.
o Added the ability to play directly to the audio device while converting.
This speeds up things dramatically and can handle very large voice files.
Thanks to the author of VoiXEL for giving me the idea that it was
possible :)
o Can stop conversion/playing by sending an abort message to the
program's ARexx port or by clicking on the close gadget.
General Binaries
o Changed localtime to gmtime. This removes the need to look at the TZ
environment variable. This means that it shouldn't matter what timezone
you're in to get the time right.
o Added environment variable AVMTIMEDATEFORMAT
V1.8
ARexx Scripts
o Fixed aaprocessmailbox to include exposing of datascript if data mode
activated.
o Fixed stdfax and stddata to call answerfax and answerdata respectively,
in case datascript and faxscript don't get propagated through. This is
basically a problem of not being able to declare strictly global variables.
I did a setclip in answervoice.avmsrc and did a getclip when we're about
to receive a fax or data connection.
o Standardized the messages to be recorded.
o Fixed a bug that would cause problems while retrieving messages
remotely.
o Made the default length of recording for Record Conversation 500 seconds.
o Fixed answervoice in that, if there are no introductory files, it's ok.
This allows us to not have any introductory files at all.
o Fixed stdfax and stddata to give voice instructions before starting up
BBS or fax reception. If those voice instruction files don't exist,
it's ok. They're not required.
AVM Programmer
o Made strings larger (especially for the comment in playnode and
presentmenunode). Also made string larger for actions (useful when
you want to do an ARexx action.
AVM Server
o Zeroed ringCount after detecting a signal (OwnDevUnit or ARexx) and
did a showRingNameNumber. This is so that, if you manually click on
any button (abort, answervoice, answerfax, answerdata, etc.), the
AVM Server won't eventually do a Silent Answer.
V1.9
ARexx Scripts
o Fixed stdtail (stdfax) to put stuff in the anonymous mailbox.
o Fixed record.avm (bug in loadiff). Changed loadiff to load from
the file 'save.iff'
o Fixed abort.avm. When recording with the external mic option, abort.avm
used to not send the abort correctly. It does now. Of course, the AVM
Player sends an abort message correctly now too, so this probably won't
ever get called again (at least by any of the programs that use playercfg.h).
o Made beep in processmailbox longer (so it can be heard). Also lengthened
beeps when recording messages and when playing them back for retrieval.
o Shortened a lot of the scripts by being smarter with what gets included.
o Added AVMAnswerPriority for those people who want to receive faxes auto.
but their modems don't support it.
AVM Server
o Decided to make the AVM Server more resilient to changes in ROMS. When
a new DLE escape sequence is introduced (and the modem sends it to us),
we don't automatically quit recording or playing. Instead, we continue.
o Fixed dial number. Now doesn't wait for a really long time if the
modem returns something (BUSY, etc.).
o Fixed problem with recording short files using LineLink modem. I forgot
to flush my mini-buffer :)
o Made LineLink modems respond really fast (when someone presses a key,
it will stop playing the voice file almost immediately). This is quite
nice.
o Fixed problem with recording that caused an "echo" :) LineLink modems
affected
o Just changed the task priority to be user-settable by using setenv.
(AVMSERVERPRI)
o Fixed problem of receiving DLE sequences while playing a voice. This
used to stop the server and return immediately. Now, it only does that
if it is a key, busy, fax, data, timedout, user abort, or error.
AVM Player
o Clicking on Abort is now much faster
o I couldn't make the time delay between clicking on record and the
modem actually recording shorter because I still had to negotiate for
using the server and stuff like that. Plus, depending on the modem
and rom settings, I may have to send between 1 and 5 commands to the
modem before it actually starts recording. So, the best way to tell
when to start speaking is to watch the blinking lights :)
o Just changed the task priority to be user-settable by using
setenv. (AVMPLAYERPRI)
o Fixed Abort problem with the external mic option
AVM ServerMan
o Made the task priority user-settable by using setenv. (AVMSERVERMANPRI)
AVM ServerConfig
o Added SPC9600 and SPC8000. The decoder is much faster. I don't have
a very good encoder though, which means that you're pretty much
limited to recording your samples using the telephone line option.
Note that this compression mode will use the serial port a lot more.
So, try it out on your machine. If you get serial port errors,
then don't use this. The major advantage is that it's easier to
decode and can be played using AmigaDirect with a lesser
CPU. BTW -- this is for the LineLink modem.
ADPCM2IFF
o Sped up CVSD to IFF. This still is not fast enough on my 030/25
though, to play direct to the amiga speakers. But it's very close.
You will hear a very small pause because the conversion didn't catch
up to the playing.
o Added a new environment variable called AVMSCALEADJUST for CVSD
decoding. If you set AVMSCALEADJUST to -1 (via a setenv
AVMSCALEADJUST -1 in the CLI), it will double the translated output.
If you set it to -2, it will quadruple the output. I think -1 and
-2 are the only sane inputs here (and 0, of course).
AVM Logger
o Environment variable AVMLOGFILE can point to a different file where
the logger can save the output.
Misc
o It is now possible to display status information (ARexx scripts need
to be modified to do this) in the Player and anything that uses
playercfg.h.
V1.10
ARexx scripts
o Fixed playtime to play the correct time now.
o Fixed playamigadirect to use the new calling format for adpcm2iff
o Fixed stdfax and stddata so that you can press * to abort them (when
they are playing instructions on how to start the fax or how to start
the terminal).
o Fixed abort.avm so that it can abort a conversion in progress
o Fixed playamiga.avm so that if a conversion is aborted, it will not play.
Also, added an option to cause adpcm2iff to play the voice file while
it is converting it.
o Added a check in playamiga.avm to see if the filename to be played
has been pre-converted to an iff file already (the filename plus an 'i'
exists). In this case, it will play that file instead of converting.
o Added a new ARexx environment setting so that it pre-converts
ADPCM2IFF
o Made it possible to both play and save to a file at the same time. This
may not work on your system (too slow?), but is good way to "preview"
the voice file so you don't have to convert the whole thing.
o Added some parameters to make a GUI not show up (but this makes it not
abortable at all). This also puts it in the background. This will
eventually be used to pre-convert incoming voice files into IFF.
o Added the slow, more accurate method of converting CVSD voice files to
IFF. This is significantly slower, but comes out with nicer sounding files.
Programmer
o Made the windows a lot smaller. It still needs at least a 640x400 screen
though.
ServerConfig
o Made windows smaller
MailboxConfig
o Made windows smaller
o Removed auto inform
o Changed the names of the options to make them more intuitive (hopefully)
o Made all of the "automatic" things have scripts that you can change
o Now, only valid characters are allowed in some of the string fields.
For example, you cannot enter a space anymore into the password field.
CallNotifier
o Made windows smaller
o Hid some of the buttons (that should not be used often)
o Made it possible to give "aliases" for each of the mailboxes. These
aliases can now have spaces in them (the names of the mailbox
directories still cannot).
LogView
o Made windows smaller
o Rearranged some of the buttons.
V1.11
ARexx Scripts
o Fixed processmailbox so that recording of intro messages goes into the
correct directory.
o Added a new way of alerting you that there are messages. It will now
play an iff file called "avm:have1message.iff" or "avm:havemessages.iff".
AVM Server
o Added two flags for making the detection of fax tones and data tones
be less sensitive. I now require reception of two data tones or two
fax tones (with the appropriate flag set -- and it is enabled by default)
before the server interprets it as a data or fax call. This is because
the ZyXEL doesn't seem to be too reliable in detecting these tones --
it seems to be too sensitive. The flags are called Needs2FaxTones
and Needs2DataTones. Both can be changed in the Advanced Flags
section of ServerConfig.
o With the appropriate flag set (RetryAfterPortUsedError), the server
will try to gain access to the serial port after a minute. If someone
is listening on the serial port, then there will be no problem since
I always try to set some serial parameters, and this will fail if there
is somebody using the serial port. However, if we got into this error
because of some bad timeout (or you turned off your modem), then we will
be ok after a minute. This flag is also available in the
Advanced Flags section of ServerConfig. Note that we will *not* retry
to access the port if we were forced into Unlisten mode by an external
ARexx command.
o When OwnDevUnit requests the port, we say so. Also, we go into CommandMode.
o Removed a lot of the status updates which seemed to be wrong in main() --
showRingNameNumber
o Now, we're a little bit smarter when starting up from UnknownMode.
We try different things to get the modem's attention. This is just
in case we were in a bad state and the modem is not responding. So,
we try different techniques (like sending an XON, turning off
record mode, play mode, doing a +++, followed by an ATH, etc.).
We also try a variety of baud rates.
o Fixed ringScript activation to not call ringScript if we're about to
answer the phone.
o Added flag "GrabModem", which tries different things to get the modem's
attention when we get a Port Used error.
o Added flag "ResyncModem", which resyncs the modem every 10 minutes (approx).
This is good to do -- it will cause the modem to go into command mode
and back into the mode where it waits for rings. This is useful especially
if you tend to turn on and off the modem. The only problem with this
is that you may miss 1 or 2 rings. This doesn't mean you will miss the
call. All it means is that the modem will not answer immediately. This
will only happen IF someone calls at the exact moment that we are testing
the modem.
ADPCM2IFF
o Fixed a bug which caused enforcer hits when trying to play a voice file
that was zero in length.
V1.11a
Released to Aminet!
AVM server
o Fixed scanForDLESequences so that it strips the DLE stuff (problem
in zyxel that dle sequences may appear between things like CONNECT,
etc.) from the string.
Default Servers
o Removed all the E0 (turn off echo) from the setup string.
This seems to make the zyxels a little less reliable.
People have noticed lockups and I think this is the main cause.
V1.12
Added Scheduler, Programmer, SchedulerView, and Programmer source files
to release. They are now keyfile protected.
CallNotifier
o Made the shut up button a checkbox gadget instead. Also, made it
have some "automatic" behaviour (when you open a mailbox, it
automatically shuts up; when you get new messages, it automatically
un-shuts up).
ADPCM2IFF
o Added old zyxel conversion routines. See StandardConfig.
IFF2ADPCM
o Added old zyxel conversion routines. See StandardConfig.
V1.13
Scheduler
o Fixed problem of saying that "That's weird, I thought..."
ARexx Scripts
o Changed silentanswer.avmsrc - when you press 2 or 5, you get the
fax and data tones right away -- no more instructions.
o Changed logfunctions.avm - now it tells you when a mailbox doesn't
exist when you try to save or load an entry.
AVM Server
o Fixed it so that it answers the phone now. Stupid bug.
V1.14
AVM Server
o Fixed the fix in 1.13
V1.15
ARexx Scripts
o Fixed a problem in playamiga.avm (thanks Stefan!)
o Made 0 = play menu again instead of starting up.
o Changed answerfax to handlefax
o Changed answerdata to handledata
o Added answerfax and answerdata (these are usable in the
ServerConfig program)
All Binaries except Programmer
o Everything is now keyboard accessible
Programmer
o Fixed problem in low memory conditions. When we run out of memory,
we now exit cleanly rather than guru.
o Fixed problem where you click on the close gadget in one of the
programmer windows and it doesn't actually close the window.
Server
o Added some more debugging information. I will be able to tell
from the trace when the server was started (so I know if I got
a complete trace).
o Added a way of doing some sort of distinctive ring even though the
modem cannot distinguish them. I can only distinguish between
the normal ring, a ring-ring (2 sub-rings) ring, and a
ring-ring-ring (3 sub-rings). For the distinctive ring with 3
sub-rings, there are two possibilities. I do not distinguish
between them.
V1.16
ARexx scripts
o Fixed scripts (send, reply, and addentry), which didn't work
in 1.15 because I added debugging functions but forgot to
include debugfunctions.avm :(
o Added support for calling a pager. ARexx script that actually
does call the pager isn't there, but some pagers can be called
using the defaultSender ARexx script.
ServerMan
o Added Quit No Kill. This is equivalent to clicking on the
window close gadget. Quit will kill all the servers it knows
about.
Server
o Fixed the distinctive ring feature I added. Why must
enhancements introduce bugs?
V1.17
ARexx scripts
o Fixed autoforward and autopage so that they don't autoforward
or autopage if the "ondemand" passwords are non-null.
o Fixed silentanswer (it wouldn't activate fax or data mode
properly ever since I separated handlefax and answerfax,
handledata and answerdata.
o Added User Beep
AVM Server
o Added "NO CARRIER" as a string to look out for when dialing.
o Added extra debugging information when dialing.
General Binaries
o Added underline for listview headers
V1.17a
o Fixed avm.doc
o Added some flags to zyxel6.10 and zyxel6.01 server config files.
V1.18
Player
o Fixed the window title so that it shows up in the MUI Prefs
program.
Server
o Added initial Rockwell support. Tested with the Zoom modem.
ServerConfig
o Added support for the Rockwell based modems.
V1.19
CallNotifier
o When shutup is true, I also do the toll saver option (it will not
pretend that there are no messages).
iff2adpcm
o Added support for converting *any* rate iff file to the supported
voice files. This will now allow me to release 9600 s/s voice
files in IFF format and have the user convert them into the necessary
voice files.
19. Wish List
-------------
3/23/94
o Add a restart servers to serverconfig. Better yet, add a way to
tell the AVM server to re-read the config file.
2/26/94
o At certain times, the rings to be expected may change. Need to add an
ARexx command in the servers to change the number of rings.
o When playing to Amiga (not AmigaDirect), add an option to play the
file while it's being converted. Although it won't be real time (the
voice file will not be continuous), at least you will get to hear
parts of it to see if it's worth the wait.
2/25/94
o Maybe blink the power led when the answering machine is on. But,
we need to blink it differently than our flashpower program does.
2/24/94
- o If port is in use, try every 5 minutes to get the port. Maybe try
different things to get the port to listen.
- o Add Quit & Kill Servers to serverman to quit serverman and to kill
all the active servers.
- o Add a name field for mailboxes (in mailbox config) and use that
to show what's in the call notifier (not just the directory name).
- o Pre-convert voice files while machine is idle (in other words,
do a low priority conversion routine when voice files are created).
2/21/94
o Add play all to the logview
o Add delete all to the logview
o Add "serverconfig" to the server manager (opens up a serverconfig
program).
2/10/94
- o Make a special answervoice to do simple answering machine stuff
- o Clean up ServerMan to hide the Close, Open, Unlisten, Listen,
Start, and Kill server gadgets.
2/9/94
o Allow disabling of busy detect for ROM versions which are faulty
o Use user-defined filenames for saveiff or loadiff
- o Allow Player/Recorder to play/record user defined files
o Phonebook that's integrated with the logview (so you can show the names
of the people with a particular phone number)
o Add better error reporting (like when audio.device is being used)
2/8/94
- o Make the anonymous mailbox accessible from the other mailboxes
- o Finish the Scheduler and SchedulerView scripts
- o Document Scheduler/SchedulerView
o Document Programmer
o Make a "copy" template for each of the Programmer constructs so that,
when a construct is instantiated, the new construct copies stuff from
this template. Template should be persistent.
o Secretary feature for calling people (integrated with the phonebook --
click on somebody to dial out until connected, play some file,
and beep)
o Localize the program (binaries and ARexx scripts -- this includes
localizing the concatenations of numbers)
- o Add a button to the Call Notifier to shut up until the next call comes
in.
o Support Rockwell chipset voice modems
o Pre-load most of the shorter ARexx scripts (such as delete, broadcast,
etc.). This should speed things up quite a bit
- o Add options so that we can easily customize the ARexx scripts without
having to maintain several versions for different users. Probably do
this through the getclip and setclip ARexx functions. Can't do this
with environment variables since they are not easily accessible from
ARexx.
- o Use MUI better -- make everything controllable from the keyboard
- o Have multiple (random, day, or time driven) greetings
o Fix up string gadgets which accept input to *not* allow spaces to be
typed in
o Add some flags to the AVM server to filter out debugging information
(so we don't have to see it all)
20. Acknowledgements
--------------------
o Stefan Odendahl for helping me find lots of bugs and problems
in the documentation.
o Mike Sinz for SimpleRexx and Enforcer
o Dr. Greg Perry of GPSoft for GPFax
o SAS for SAS/C
o David Gay for Emacs port
o ZyXEL for their modem and the conversion routines from ADPCM2/3 to
something
o Sierra Semi for being helpful w/r to the LineLink modem
o Commodore Amiga for their iff routines
o David Junod for FindLine
o Alex G. M. Smith for AGMSRecordSound, AGMSRecordSoundPS3, and
AGMSPlaySound. He was helpful in adding the ARexx commands
necessary to make these program work seamlessly with AVM.
o Kasper Peeters for helping me add support for the dolphin
modem.
21. Beta Testers
----------------
o Stefan Odendahl
o Dirk Sieber
o Michael Breger
o James Atwill - thanks for the asl code!
o Christian Stelter
o Pjotr Sjostrom
o Frank Geider
o Fred Pienkos
o Cogrossi Fulvio - please send me email!
o Tim Lloyd
o Daniel J. McCoy
o Ryan Bruner
22. Common Problems
-------------------
o AVM doesn't seem to play a file that I selected using the
file requester.
AVM *cannot* play filenames with spaces in
them. For example, the file "Ram Disk:dialtone" cannot be
played. You need to use "ram:dialtone". Sorry, but I just don't
have the time to go through all the ARexx scripts and fix
this. This was one of those "compromises" I made when I started
this project. I didn't want to have to muck around with quoting
conventions.
o AVM reports that the serial device either couldn't be opened when
working with GPFax.
You should make sure that the shared mode flag in GPFax is enabled.
o When answering a fax call, the modem picks the line up, drops it,
then picks it up again.
This is caused by an "&F" in the Modem Init string of GPFax. You
should remove this.
o I have trouble receiving and sending faxes with the LineLink
modem.
You need to make sure the Modem Init string is the
same as the init string mentioned in step number 8 of
`Setting up'. Also, the LineLink modem cannot detect a
fax automatically. You will need to instruct people who may
send faxes to you that they have to follow instructions (like
pressing 2) on how to start up fax reception.
o AVM doesn't handle data calls properly. Why?
You need to make sure that AXsh is set up properly. Here is
what I needed to do in my s:user-startup
;BEGIN AXSH
assign axsh: pd:axsh.installed
path axsh:bin
mount axaux: from axsh:etc/mountlist.axsh
;END AXSH
In addition to making sure that AXsh is set up properly, you
need to make sure that "answerdata" is in the `Data Call'
field. The ARexx script "answerdata.avm" sets up the modem,
performs an ATA, then calls the script "startbbs.avm" if
there is a modem connection. If you are not using AXsh, the script
"startbbs.avm" is where you should start tinkering.
o I get very short files when recording; sometimes, they're
truncated. Sometimes, there's too much silence.
When you press `Record', there is a short delay before
the modem actually starts recording. This is due to two things:
First, I need to send commands to the modem to actually start
recording. This takes a finite amount of time. Second, I need to
tell the server to tell the modem to start recording. To do this,
I use ARexx to communicate between the user interface and the AVM
Server. Again, this takes some processing time. So, to be sure
that what you say gets recorded, you should press `Record', then watch
the modem until some light starts flashing continuously (this
indicates a recording process). Then you can start speaking.
When stopping the recording, there is also a short delay between
the time you press `Stop' and the time the recording actually stops.
These short delays will take some getting used to, but when you're
used to them, they will turn into a minor annoyance. These delays
may decrease in future versions.
o How do I save window positions and sizes and icon positions?
Go to a CLI, cd to env:mui, look for the names of the AVM programs
(AVMLOGVIEW, AVMCALLNOTIFIER, AVMLOGGER, AVMPLAYREC, etc.), and copy
their .wini files to envarc:mui. For icon positions, you need to use
the MUI Prefs program. Then copy over the .prefs files to envarc:mui.
o How do I put all the windows on a different screen?
Use the MUI Prefs program to create a public screen and tell MUI
to open up the windows on that public screen.
o How do I make the windows open up in iconified form?
Use the MUI Prefs program.
o Do I need a registered version of MUI?
No, you do not. But, you will be able to customize all the AVM
programs if you do register MUI. I really encourage you to do so.
Stefan Stuntz has done a very good job with MUI, so please support
him.
o When I try to edit something in the programmer, no window opens and the
programmer hangs.
You need to have a screen size of at least 640x400.
MUI will not open a window if it is too large to fit in the screen.
o When using the programmer, sometimes it just exits.
You probably don't have enough memory. The Programmer uses a lot
of memory because of the large windows it uses and the fact that
it loads an entire file into memory. Try closing other
applications when using the Programmer.
o Sometimes, AVM misses keys pressed by a caller.
This is not AVM's fault. It is the fault of the modem.
I have nothing to do with detection of DTMF keys. It just
reports them to me. If you have a ZyXEL with a ROM less
than 6.11a, I really recommend that you upgrade your ROMS.
o After 10 minutes, the AVM server dies for some unknown reason.
The UNREGISTERED version will not work properly unless its "annoying"
window opens up on the WorkBench. Therefore, do not use a public
screen manager to "shanghai" its window to another screen. Also,
do *not* use an external program to close the window or resize the
window. Your computer may crash. I am not responsible for crashes
due to tampering with the "annoying" window.
o AVM doesn't want to record anything.
Perhaps you didn't set things up correctly. You need to make
sure that the Drawer "AVM:voices" exists. From the WB, create
a drawer called "voices" in the AVMSuite Drawer. Or, from the
CLI, type in "makedir avm:voices".
o AVM only records silence or a dial tone when I'm using the
TelephoneLine option.
For all modems *not* based on the Rockwell chipset,
the telephone should *not* be hooked up to the back of the modem.
You should hook up the telephone and modem using a splitter of
some sort.
o AVM hangs up while you are accessing some of the voice menus (when
calling). Or, it just hangs up on you.
Make sure that you record all the messages in the Player program.
If you did record all the messages, then run the Logger program,
play around with the system until it hangs up unexpectedly. Then,
click on the Save button in the Logger window, and send me the
file called "avm:logger.save". That will help me tremendously
in finding out what is wrong.
o Recording doesn't seem to work too well. It seems to terminate early.
Try running the program called Logger. When recording, if it says there's
a serial port error, then your machine cannot handle the speed at
which the modem is transmitting data at. Maybe you have a program
running in the background that's taking up so much CPU time that
it takes too long to process the serial port interrupt. The first
thing to try is to enable the "Use AVMTemp: for Recording" button
in the Server Config program and restart the AVM Suite. If that
still doesn't work, try opening up a public screen with a low
resolution. Then, switch to that screen and try AVM again. If that
still doesn't work, you may need one of those high speed serial
ports which handle high speeds more easily.
o On the LineLink modem, AVM seems to hang up when playing to the modem.
Maybe you enabled the "UsesHardwareHandshaking" flag in the
Advanced Flags section. Disable that and try it again. Please don't
play with things that aren't documented.
o How can I speed up playback of my incoming messages through the
Amiga?
You can turn on the PreConvert feature. See `Pre-Converting'.
o I'm using a LineLink modem and playback through the Amiga is very
soft.
Try adjusting the AVMSCALEADJUST environment variable. See
`Scaling output'.
o Why does AVM not release the serial device when I quit all the AVM
programs?
Remember that there is a "server" that's running in the background.
If you have an unregistered version of AVM, you would see the
window. If you have a registered version, you probably wouldn't
even know it was running.
As of V1.17, you now have a Quit button and a Quit No Kill button.
If you Quit, you take all the servers with you. With the other
button, you don't.
o Do I need a digitizer to make my own messages?
No, you can use the TelephoneLine option to record any outgoing
messages.
o How can I customize the way dates and times are played back
through the modem? It seems like it's too "American".
Read the manual. See `Date Format' and `Time Format'.
o How can I customize the way AVM displays dates in the Scheduler,
LogView, SchedulerView, etc.?
Read the manual. See `Time and Date Specification'.
o Can I distribute keyfiles?
Absolutely not. You can only distribute AVM as it comes in
its .lha form. You cannot create a new archive or add to
the archive that's available for download.
o Why should I register?
Because it would encourage me to keep supporting AVM. I don't
think I charge too much for what this software is capable of.
Even if you do not register, I would appreciate a postcard
from you saying that you use AVM.
o On a ZyXEL, when sending out voice files using the scheduler,
it seems to be playing the voice files even though the called
party hasn't picked up the phone. Why?
The ZyXELs cannot seem to determine reliably when the called
party has actually picked up the phone. I can't figure out
what the problem is. Probably a bug in the ROMs. Don't
worry, outgoing messages are repeated multiple times.
o How do I change the icons when the program is iconified?
Use some icon editor and edit the icons in avm:icons.
23. New Voice Files
-------------------
Execute the script called "avm:renamevoicefiles". I renamed stuff
like one, two, ... to number1, number2, ... to facilitate in sorting
stuff in the Player program. Note that this script is executed
automatically if you used the Install script.
Execute the script called "avm:deletevoicefiles". This will delete
all the obsolete voice files. Note that it won't delete voice files
that are still usable. Only the minimal number of voice files will
be deleted. If you run the installer script, I ask before doing this.
However, I highly recommend that you do this and just re-record
everything that the Player program tells you to record.
If you have voice files that work with AVM 1.11, you will need to record
the following voice files to make AVM 1.12 work (some are new, some need
to be re-recorded).
o NeedToRecordIntro
o EditIntro
o NeedToEnterTel
o RetrieveMessages
o MaintenanceMode
o NeedToRecordOutgoing
o ChangeAutoOptions
o AutoOptions
o NumberToSendTo
o EditSendMessage
o AutoForward
o SendVoice
o AutoIsOn
o AutoIsOff
o AutoOnDemand
o AutoTelNumber
o AnnounceIsOn
o AnnounceIsOff
o MailboxGreeting
o BeingForwarded
o AnnounceForward
o SkipFaxMaintenance
If you had 1.15, you need to record/re-record the following voice
messages:
o AnnounceAgain
o MailboxGreeting
o SkipFaxMaintenance
o MailboxCaller
o any voice message where you told the caller that 0 was startup.
0 is now a standard for playing a menu again. # is the standard
to go up. * is the standard for hanging up.
24. Caller ID and Distinctive Ring
If you have a ZyXEL, the way to activate Caller ID is to put an
S40.2=1 in your Voice Setup String. LineLink owners cannot make
use of the Caller ID feature. I have it on good authority that
the hardware cannot physically support Caller ID. Remember that
although the ROMS say they support Caller ID, if the modem
doesn't have enough "stuff" in it to pick up Caller ID information,
then the modem cannot support Caller ID.
To activate the Distinctive Ring feature in your ZyXEL, you need
to put an S40.3=1S40.4=1S40.5=1S40.6=1 in your Voice Setup String.
If you have any other modem, you don't need to do anything. Try
it out and see if AVM can distinguish between the different
distinctive rings that you have subscribed to your phone company
for.
25. Programmer
I cannot describe everything that the Programmer can do at this
time. Sorry. But, I will tell you how to add new mailboxes.
The first thing to do is to add a mailbox using the Call Notifier
program. When you add a mailbox, don't include spaces in the
mailbox name. Note that I distinguish between a mailbox name
and a mailbox alias. The mailbox alias is what you see in
the Call Notifier listview. Sometimes, the alias is the same
as the name.
Anyway, the next thing to do is to run the Programmer. Double-
click on the file called startup.avmsrc. Double-click on the
line which says level0. This is a menu to which you can add
mailboxes. Look at how mailbox1 and mailbox2 are done. You
will see how easy it is to use the Programmer. Really!
Once you're done editing stuff, Save your changes, then click
on Compile. Then, test out your new system. If it fails
for some unknown reason, try Compiling again. This has
something to do with "include" dependencies that I'd rather
not get into. Note that I've never needed to Compile
twice -- I just thought I should mention it just in case.